要在WP REST API响应中设置特定响应头,可以使用rest_api_init
钩子来注册一个回调函数,并使用register_rest_route
函数来定义REST API路由。在回调函数中,您可以将要设置的响应头添加到WP_REST_Response对象的标头数组中。
以下是一个示例代码片段,说明如何在WP REST API响应中设置自定义响应头:
add_action( 'rest_api_init', function () {
register_rest_route( 'myplugin/v1', '/example/', array(
'methods' => 'GET',
'callback' => 'myplugin_example_function',
) );
} );
function myplugin_example_function( $request ) {
$response = new WP_REST_Response( 'Hello World!' );
$response->set_headers( array(
'X-MyPlugin-Version' => '1.0',
'Cache-Control' => 'no-cache, no-store, must-revalidate',
) );
return $response;
}
在这个例子中,我们使用rest_api_init
和register_rest_route
来注册一个名为“myplugin/v1/example”的REST API路由。这个路由使用GET方法,并指向一个名为“myplugin_example_function”的回调函数。
在myplugin_example_function
函数中,我们创建一个新的WP_REST_Response对象,并将“Hello World!”作为响应体传递给它。然后,我们使用set_headers
方法将两个自定义响应头添加到WP_REST_Response对象中。
最后,我们返回包含自定义响应头的WP_REST_Response对象,这些响应头将添加到WP REST API响应中。
如果您需要添加自定义响应头到WP REST API响应中而不覆盖原有的头信息,可以使用add_header
方法。这个方法允许您将一个新的头信息添加到WP_REST_Response对象的标头数组中。