钩子文档

rest_pre_serve_request

💡 云策文档标注

概述

rest_pre_serve_request 是一个 WordPress REST API 过滤器,用于控制 REST API 请求是否已手动处理。开发者可以通过此 Hook 拦截请求,阻止默认响应发送给客户端。

关键要点

  • 此过滤器允许开发者手动处理 REST API 请求,返回 true 可阻止默认响应发送。
  • 参数包括 $served(布尔值,表示请求是否已处理)、$result(WP_HTTP_Response 或 WP_REST_Response)、$request(WP_REST_Request)和 $server(WP_REST_Server 实例)。
  • 在 WP_REST_Server::serve_request() 方法中调用,用于处理 REST API 请求的发送。
  • 自 WordPress 4.4.0 版本引入。

代码示例

$served = apply_filters( 'rest_pre_serve_request', false, $result, $request, $this );

📄 原文内容

Filters whether the REST API request has already been served.

Description

Allow sending the request manually – by returning true, the API result will not be sent to the client.

Parameters

$servedbool
Whether the request has already been served.
Default false.
$resultWP_HTTP_Response
Result to send to the client. Usually a WP_REST_Response.
$requestWP_REST_Request
Request used to generate the response.
$serverWP_REST_Server
Server instance.

Source

$served = apply_filters( 'rest_pre_serve_request', false, $result, $request, $this );

Changelog

Version Description
4.4.0 Introduced.