| Server IP : 146.190.157.162 / Your IP : 216.73.217.6 Web Server : Apache System : Linux ubuntu-s-2vcpu-4gb-amd-sfo3-01-KIT-DIGITAL 6.5.0-44-generic #44-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 7 15:10:09 UTC 2024 x86_64 User : businessweek ( 639) PHP Version : 8.2.10-2ubuntu2.2 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,pcntl_exec,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_signal,pcntl_signal_dispatch,pcntl_getpriority,pcntl_setpriority,dl,putenv,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/html/avvizstudio/wp-content/plugins/wordpress-seo/src/wrappers/ |
Upload File : |
<?php
namespace Yoast\WP\SEO\Wrappers;
use Exception;
use YoastSEO_Vendor\GuzzleHttp\Promise\FulfilledPromise;
use YoastSEO_Vendor\GuzzleHttp\Promise\PromiseInterface;
use YoastSEO_Vendor\GuzzleHttp\Promise\RejectedPromise;
use YoastSEO_Vendor\GuzzleHttp\Psr7\Response;
use YoastSEO_Vendor\Psr\Http\Message\RequestInterface;
/**
* Wraps wp_remote_get in an interface compatible with Guzzle.
*/
class WP_Remote_Handler {
/**
* Calls the handler.
* Cookies are currently not supported as they are not used by OAuth.
* Writing responses to files is also not supported for the same reason.
*
* @param RequestInterface $request The request.
* @param array $options The request options.
*
* @return PromiseInterface The promise interface.
*
* @throws Exception If the request fails.
*/
public function __invoke( RequestInterface $request, array $options ) {
$headers = [];
foreach ( $request->getHeaders() as $name => $values ) {
$headers[ $name ] = \implode( ',', $values );
}
$args = [
'method' => $request->getMethod(),
'headers' => $headers,
'body' => (string) $request->getBody(),
'httpVersion' => $request->getProtocolVersion(),
];
if ( isset( $options['verify'] ) && $options['verify'] === false ) {
$args['sslverify'] = false;
}
if ( isset( $options['timeout'] ) ) {
$args['timeout'] = ( $options['timeout'] * 1000 );
}
$raw_response = \wp_remote_request( (string) $request->getUri(), $args );
if ( \is_wp_error( $raw_response ) ) {
$exception = new Exception( $raw_response->get_error_message() );
return new RejectedPromise( $exception );
}
$response = new Response(
$raw_response['response']['code'],
$raw_response['headers']->getAll(),
$raw_response['body'],
$args['httpVersion'],
$raw_response['response']['message'],
);
return new FulfilledPromise( $response );
}
}