wp_is_jsonp_request() WP 5.2.0
Проверяет, является ли текущий запрос запросом JSONP
или ожидает ответа JSONP
.
Проверяет наличие GET параметра _jsonp - $_GET['_jsonp']
. Значение этого параметра прогоняется через функцию wp_check_jsonp_callback() и, если проверка пройдена, функция вернет true.
Работает на основе:
wp_check_jsonp_callback()
✈ 1 раз = 0.000001с = скорость света | 50000 раз = 0.01с = скорость света | PHP 7.3.3, WP 5.2.3
Хуки из функции
Возвращает
true/false.
- true — когда запрос ожидает JSONP ответ ($_GET['_jsonp'] содержит имя колбэка и оно валидно).
- false — в остальных случаях.
Использование
wp_is_jsonp_request();
Примеры
#1 Вернем JSONP данные, если это JSONP запрос
$data = [ 'foo'=>'bar' ]; if( wp_is_json_request() ){ header( 'Content-Type: application/javascript; charset=utf-8' ); header( 'X-Content-Type-Options: nosniff' ); header( 'X-Robots-Tag: noindex' ); nocache_headers(); $jsonp_callback = $_GET['_jsonp']; // Prepend '/**/' to mitigate possible JSONP Flash attacks. // https://miki.it/blog/2014/7/8/abusing-jsonp-with-rosetta-flash/ echo '/**/' . $jsonp_callback . '(' . wp_json_encode( $data ) . ')'; }
Список изменений
С версии 5.2.0 | Введена. |
Код wp is jsonp request:
wp-includes/load.php
WP 5.3
Cвязанные функции
Из метки: Запрос (request)
Еще из раздела: Вспомогательные
- __return_empty_array()
- __return_empty_string()
- __return_false()
- __return_null()
- __return_true()
- __return_zero()
- build_query()
- get_page_hierarchy()
- get_temp_dir()
- human_readable_duration()
- is_email()
- is_php_version_compatible()
- is_serialized()
- is_serialized_string()
- is_wp_version_compatible()
- map_deep()
- maybe_serialize()
- maybe_unserialize()
- path_join()
- seems_utf8()
- stripslashes_deep()
- timer_stop()
- urlencode_deep()
- wp_array_slice_assoc()
- wp_basename()
- wp_debug_backtrace_summary()
- wp_doing_ajax()
- wp_extract_urls()
- wp_filter_object_list()
- wp_generate_uuid4()
- wp_html_split()
- wp_is_numeric_array()
- wp_is_uuid()
- wp_json_encode()
- wp_kses_array_lc()
- wp_kses_hair()
- wp_kses_uri_attributes()
- wp_list_filter()
- wp_list_pluck()
- wp_list_sort()
- wp_make_link_relative()
- wp_mkdir_p()
- wp_normalize_path()
- wp_parse_args()
- wp_parse_id_list()
- wp_parse_list()
- wp_parse_slug_list()
- wp_parse_str()
- wp_parse_url()
- wp_rand()
- wp_reset_vars()
- wp_send_json()
- wp_send_json_error()
- wp_send_json_success()
- wp_slash()
- wp_spaces_regexp()
- wp_sprintf()
- wp_tempnam()
- wp_unslash()
- wp_validate_boolean()

campusboy
youtube.com/c/wpplus
—
Создатель YouTube канала wp-plus, на котором делюсь своим опытом. Активный пользователь wp-kama.ru. WordPress-разработчик. Разработка сайтов и лендингов. Доработка существующих проектов. Сопровождение ресурсов.
Редакторы: Kama