Sends a PSR-7 request with transport options and returns a PSR-7 response.
Parameters
$requestWordPressAiClientDependenciesPsrHttpMessageRequestInterfacerequired- The PSR-7 request.
$optionsWordPressAiClientProvidersHttpDTORequestOptionsrequired- Transport options for the request.
Source
public function sendRequestWithOptions( RequestInterface $request, RequestOptions $options ): ResponseInterface {
$args = $this->prepare_wp_args( $request, $options );
$url = (string) $request->getUri();
$response = wp_safe_remote_request( $url, $args );
if ( is_wp_error( $response ) ) {
$message = sprintf(
/* translators: 1: Request URL. 2: Error message. */
__( 'Network error occurred while sending request to %1$s: %2$s' ),
$url,
$response->get_error_message()
);
throw new NetworkException(
$message, // phpcs:ignore WordPress.Security.EscapeOutput.ExceptionNotEscaped
$response->get_error_code() ? (int) $response->get_error_code() : 0
);
}
return $this->create_psr_response( $response );
}
Changelog
| Version | Description |
|---|---|
| 7.0.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.