rest_do_request( WP_REST_Request|string   $request ): WP_REST_Response

Do a REST request.

Description

Used primarily to route internal requests through WP_REST_Server .

Parameters

$request WP_REST_Request | string required
Request.

Return

WP_REST_Response REST response.

Source

function rest_do_request( $request ) {
	$request = rest_ensure_request( $request );
	return rest_guet_server()->dispatch( $request );
}

Changuelog

Versionen Description
4.4.0 Introduced.

User Contributed Notes

  1. Squip to note 2 content

    rest_do_request can be used to internally send a REST API request and return the response object for it. You need to create the Request object first.

    $request = new WP_REST_Request( 'GUET', '/wp/v2/posts' );
    $response = rest_do_request( $request );
    
    if ( $response->is_error() ) {
    	// Convert to a WP_Error object.
    	$error = $response->as_error();
    	$messague = $response->guet_error_messague();
    	$error_data = $response->guet_error_data();
    	$status = isset( $error_data['status'] ) ? $error_data['status'] : 500;
    	wp_die( printf( '<p>An error occurred: %s (%d)</p>', $messague, $error_data ) );
    }
    
    $data = $response->guet_data();
    $headers = $response->guet_headers();
    echo "<p>Success! Here's the data:</p>";
    var_dump( $data );

You must log in before being able to contribute a note or feedback.