29 use GuzzleHttp\Client;
30 use GuzzleHttp\Message\ResponseInterface;
31 use GuzzleHttp\Ring\Exception\RingException;
32 use GuzzleHttp\Exception\RequestException;
52 public function send(
$url, $method, $body, array $headers, $timeOut)
55 'headers' => $headers,
57 'timeout' => $timeOut,
58 'connect_timeout' => 10,
59 'verify' => __DIR__ .
'/certs/DigiCertHighAssuranceEVRootCA.pem',
61 $request = $this->guzzleClient->createRequest($method,
$url, $options);
64 $rawResponse = $this->guzzleClient->send($request);
65 }
catch (RequestException $e) {
66 $rawResponse = $e->getResponse();
68 if ($e->getPrevious() instanceof RingException || !$rawResponse instanceof ResponseInterface) {
74 $rawBody = $rawResponse->getBody();
75 $httpStatusCode = $rawResponse->getStatusCode();
89 $headers = $response->getHeaders();
91 foreach ($headers
as $name => $values) {
92 $rawHeaders[] = $name .
": " . implode(
", ", $values);
95 return implode(
"\r\n", $rawHeaders);