WP_AI_Client_HTTP_Client::create_psr_response
Creates a PSR-7 response from a WordPress HTTP response.
Метод класса: WP_AI_Client_HTTP_Client{}
Хуков нет.
Возвращает
ResponseInterface. PSR-7 response.
Использование
// private - только в коде основоного (родительского) класса $result = $this->create_psr_response( $wp_response ): ResponseInterface;
- $wp_response(array<string, mixed>) (обязательный)
- WordPress HTTP API response array.
Список изменений
| С версии 7.0.0 | Введена. |
Код WP_AI_Client_HTTP_Client::create_psr_response() WP AI Client HTTP Client::create psr response WP 7.1.4
private function create_psr_response( array $wp_response ): ResponseInterface {
$status_code = wp_remote_retrieve_response_code( $wp_response );
$reason_phrase = wp_remote_retrieve_response_message( $wp_response );
$headers = wp_remote_retrieve_headers( $wp_response );
$body = wp_remote_retrieve_body( $wp_response );
$response = $this->response_factory->createResponse( (int) $status_code, $reason_phrase );
if ( $headers instanceof WP_HTTP_Requests_Response ) {
$headers = $headers->get_headers();
}
if ( is_array( $headers ) || $headers instanceof Traversable ) {
foreach ( $headers as $name => $value ) {
$response = $response->withHeader( $name, $value );
}
}
if ( ! empty( $body ) ) {
$stream = $this->stream_factory->createStream( $body );
$response = $response->withBody( $stream );
}
return $response;
}