функция since 4.4.0

rest_handle_options_request()

Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.

Сигнатура

rest_handle_options_request( mixed $response, WP_REST_Server $handler, WP_REST_Request $request ): WP_REST_Response

Описание

Это обрабатывается вне кода сервера, поскольку не подчиняется обычному сопоставлению маршрутов.

Оригинал (английский)

This is handled outside of the server code, as it doesn’t obey normal route mapping.

Параметры

$response mixed обязательный
Текущий ответ: либо ответ, либо null для обозначения сквозной передачи.
$handler WP_REST_Server обязательный
Экземпляр ResponseHandler (обычно WP_REST_Server).
$request WP_REST_Request обязательный
Запрос, использованный для формирования текущего ответа.

Возвращаемое значение

WP_REST_Response

null

Исходный код

wp-includes/rest-api.php:820

function rest_handle_options_request( $response, $handler, $request ) {
	if ( ! empty( $response ) || $request->get_method() !== 'OPTIONS' ) {
		return $response;
	}

	$response = new WP_REST_Response();
	$data     = array();

	foreach ( $handler->get_routes() as $route => $endpoints ) {
		$match = preg_match( '@^' . $route . '$@i', $request->get_route(), $matches );

		if ( ! $match ) {
			continue;
		}

		$args = array();
		foreach ( $matches as $param => $value ) {
			if ( ! is_int( $param ) ) {
				$args[ $param ] = $value;
			}
		}

		foreach ( $endpoints as $endpoint ) {
			$request->set_url_params( $args );
			$request->set_attributes( $endpoint );
		}

		$data = $handler->get_data_for_route( $route, $endpoints, 'help' );
		$response->set_matched_route( $route );
		break;
	}

	$response->set_data( $data );
	return $response;
}

История изменений

ВерсияОписание
4.4.0 Introduced.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.