rest_parse_request_arg()
云策文档标注
概述
rest_parse_request_arg() 函数用于解析 REST API 请求参数,基于路由注册的详细信息进行验证和清理。它通常作为 sanitize_callback 在端点参数注册中使用。
关键要点
- 函数接受三个参数:$value(参数值)、$request(WP_REST_Request 对象)和 $param(参数名)。
- 内部调用 rest_validate_request_arg() 进行验证,如果返回 WP_Error 则直接返回错误。
- 验证通过后,调用 rest_sanitize_request_arg() 进行清理,并返回清理后的值。
- 返回值类型为 mixed,可以是清理后的值或 WP_Error。
- 相关函数包括 rest_validate_request_arg()、rest_sanitize_request_arg() 和 is_wp_error()。
- 自 WordPress 4.7.0 版本引入。
代码示例
function rest_parse_request_arg( $value, $request, $param ) {
$is_valid = rest_validate_request_arg( $value, $request, $param );
if ( is_wp_error( $is_valid ) ) {
return $is_valid;
}
$value = rest_sanitize_request_arg( $value, $request, $param );
return $value;
}
原文内容
Parse a request argument based on details registered to the route.
Description
Runs a validation check and sanitizes the value, primarily to be used via the sanitize_callback arguments in the endpoint args registration.
Parameters
$valuemixedrequired$requestWP_REST_Requestrequired$paramstringrequired
Source
function rest_parse_request_arg( $value, $request, $param ) {
$is_valid = rest_validate_request_arg( $value, $request, $param );
if ( is_wp_error( $is_valid ) ) {
return $is_valid;
}
$value = rest_sanitize_request_arg( $value, $request, $param );
return $value;
}
Changelog
| Version | Description |
|---|---|
| 4.7.0 | Introduced. |