Exemple #1
0
 /**
  * The function in which the actual remote cal is made
  *
  * @param Request $request
  * @throws InvalidRequestUrl
  */
 public function doRequest(Request $request)
 {
     if (is_null($request->getUrl()) || $request->getUrl() == '') {
         throw new InvalidRequestUrl();
     }
     //Using Guzzle instead of the old curl
     //We also use the cacert.pem to verify all SSL connections
     $client = new Client();
     $result = $client->request($request->getMethod(), $request->getUrl(), ['headers' => $request->getHeaders(), 'verify' => __DIR__ . '/cacert.pem', 'proxy' => $request->getProxies()]);
     //Generate the request object and inject it into the request
     $response = new Response();
     $response->setStatus($result->getStatusCode());
     $response->setBody($result->getBody());
     $response->setHeaders($result->getHeaders());
     $request->setResponse($response);
 }