* $client = new Client(); * $request = new GetRequest('http://google.com'); * $response = $client->request($request); * * if ($response->getStatusCode() == 200) { * echo (string) $response->getBody(); * } * * * @author Christoph Kappestein * @license http://www.apache.org/licenses/LICENSE-2.0 * @link http://phpsx.org */ class Client implements ClientInterface { /** @var \GuzzleHttp\Client */ protected $client; /** * @param array $options */ public function __construct(array $options = []) { $this->client = new \GuzzleHttp\Client($options); } /** * @inheritdoc */ public function request(RequestInterface $request, OptionsInterface $options = null) { if ($options === null) { $options = new Options(); } $opt = [ 'allow_redirects' => $options->getAllowRedirects(), 'cert' => $options->getCert(), 'headers' => $request->getHeaders(), 'http_errors' => false, 'proxy' => $options->getProxy(), 'ssl_key' => $options->getSslKey(), 'verify' => $options->getVerify(), 'timeout' => $options->getTimeout(), 'version' => $options->getVersion(), ]; if (!in_array($request->getMethod(), ['HEAD', 'GET'])) { $opt['body'] = $request->getBody(); } $sink = $options->getSink(); if (!empty($sink)) { $opt['sink'] = $sink; } $response = $this->client->request($request->getMethod(), $request->getUri(), $opt); return new Response($response->getStatusCode(), $response->getHeaders(), $response->getBody()); } } __halt_compiler();----SIGNATURE:----CYgiqj8Yns5a0jzxEY9ctQNHvcBvRls0C/F2Ot2smfngoqfVpKULv1zoTEKplxaDPLBk5WHSx2NKgZm3d1vxKwHfTuDvVlW+k5Q6Fko02uCW6URMFGufzS7TQc5q3apDgIlBqvLJnR/wxzN4UPsr2stbik9MsYA1544DPmCckM3rP+Ov9hAvS/pIQNv3F5bsoY6iiKM7fs/tEu+LaPZwqcPqk5JVuRTmw1UCnPI7RPSLQ/XrKKbGckb8ROyrL8QTwlmPSBqpF3qgygRh43h++0Brl1sFAmfUggqtV4ycpQt/bWinnjt723wr+9Iu3EmIZjPaD69pwhPh3Lsj0N5oWgKdkkbi/7cfRuO3j4GF+q+B+m540gk7Vn2gr8MemoyhYtbLSbF22cOy9k4jiIzgfZPfY/Cnvim3m3GB6CIFlnFtLQrAd/MA7e8Ccrm7YzBxVYVa9bEMo4HHwshWQZdvKKjlJUdFn58lkvxYEqXZzONcoH/vnetrlrl7jSr0xnCJw5N3BB2J2KmCaPxjbaRsNjNQIZZTi015lesdRbQaP1DhlfEaKnZN3G/VahMU41adA/s8tvcZ+Z9liy/SUbYAKegNMrJ5h1qnfokFu54/E9Ukj2YYPy/cHsyiRjsTTF8pIiZWDvLV1fMHkxzJlOt/8eXg7cDZYyIzMsQNpoNPcyU=----ATTACHMENT:----OTQ5ODYzNzIxMjIwMjc2MCAyNzAxNzU3NDYyMDc0MDI5IDE4MzU4ODQyMzcxMTUwNjQ=