rest_convert_error_to_response
函数
rest_convert_error_to_response ( $error )
- 参数
-
-
(WP_Error)
$error
WP_Error instance.- Required: 是
-
(WP_Error)
- 返回值
-
- (WP_REST_Response) List of associative arrays with code and message keys.
- 定义位置
-
-
wp-includes/rest-api.php
, line 3319
-
wp-includes/rest-api.php
- 引入
- 5.7.0
- 弃用
- –
将一个错误转换为一个响应对象。
这遍历了所有的错误代码和信息,把它变成一个平面数组。这使得客户端行为更简单,因为它在JSON中被表示为一个列表,而不是一个对象/地图。
function rest_convert_error_to_response( $error ) { $status = array_reduce( $error->get_all_error_data(), static function ( $status, $error_data ) { return is_array( $error_data ) && isset( $error_data['status'] ) ? $error_data['status'] : $status; }, 500 ); $errors = array(); foreach ( (array) $error->errors as $code => $messages ) { $all_data = $error->get_all_error_data( $code ); $last_data = array_pop( $all_data ); foreach ( (array) $messages as $message ) { $formatted = array( 'code' => $code, 'message' => $message, 'data' => $last_data, ); if ( $all_data ) { $formatted['additional_data'] = $all_data; } $errors[] = $formatted; } } $data = $errors[0]; if ( count( $errors ) > 1 ) { // Remove the primary error. array_shift( $errors ); $data['additional_errors'] = $errors; } return new WP_REST_Response( $data, $status ); }
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。