/** * @inheritDoc */ public function execute() { $client = new Client(['headers' => $this->request->getHeaders()]); try { $response = $client->request($this->request->getMethod(), $this->request->getUri(), ['body' => $this->request->getBody()->getContents()]); } catch (ClientException $e) { $this->error = ['status' => $e->getResponse()->getStatusCode(), 'content' => $e->getResponse()->getBody()->getContents()]; return false; } $this->output = $response->getBody()->getContents(); return true; }
/** * {@InheritDoc} */ public function send(Request $request) { $guzzleRequest = $this->client->createRequest($request->getMethod(), $request->getUri(), $request->getHeaders(), $request->getBody()); $guzzleResponse = $guzzleRequest->send(); $response = new Response($guzzleResponse->getStatusCode(), $guzzleResponse->getHeaders()->toArray(), $guzzleResponse->getBody(true)); return $response; }
private function sendRequestAsyncInternal(BaseRequest &$request, BaseResponse &$response, AsyncCallback $callback = NULL) { $this->addRequiredHeaders($request); $parameters = array('exceptions' => false, 'http_errors' => false); $queryString = $request->getQueryString(); $body = $request->getBody(); if ($queryString != NULL) { $parameters['query'] = $queryString; } if ($body != NULL) { $parameters['body'] = $body; } $request = new Request(strtoupper($request->getMethod()), $request->getResourcePath(), $request->getHeaders()); try { if ($callback != NULL) { return $this->client->sendAsync($request, $parameters)->then(function ($res) use(&$response, $callback) { try { $response->parseResponse($res->getStatusCode(), $res->getBody()); $callback->onSucceed($response); } catch (MnsException $e) { $callback->onFailed($e); } }); } else { return $this->client->sendAsync($request, $parameters); } } catch (TransferException $e) { $message = $e->getMessage(); if ($e->hasResponse()) { $message = $e->getResponse()->getBody(); } throw new MnsException($e->getCode(), $message, $e); } }
/** * {@InheritDoc} */ public function send(Request $request) { $guzzleRequest = $this->client->createRequest($request->getMethod(), $request->getUri(), ['headers' => $request->getHeaders()]); $guzzleRequest->setBody(Stream::factory($request->getBody())); $guzzleResponse = $this->getClient()->send($guzzleRequest); $response = new Response($guzzleResponse->getStatusCode(), $guzzleResponse->getHeaders(), $guzzleResponse->getBody(true)); return $response; }
/** * Adds static header(s) to the HTTP request headers * * @param \GuzzleHttp\Psr7\Request $request HTTP request object. * * @return \GuzzleHttp\Psr7\Request */ public function handleRequest($request) { $result = $request; foreach ($this->_headers as $key => $value) { $headers = $request->getHeaders(); if (!array_key_exists($key, $headers)) { $result = $result->withHeader($key, $value); } } return $result; }
/** * @covers MicrosoftAzure\Storage\Common\Internal\Filters\HeadersFilter::handleRequest * @covers MicrosoftAzure\Storage\Common\Internal\Filters\HeadersFilter::__construct */ public function testHandleRequestEmptyHeaders() { // Setup $uri = new Uri('http://microsoft.com'); $request = new Request('Get', $uri, array(), NULL); $filter = new HeadersFilter(array()); $expected = $request->getHeaders(); // Test $request = $filter->handleRequest($request); // Assert $this->assertEquals($expected, $request->getHeaders()); }
/** * @return array */ public function getHeaders() { return $this->request->getHeaders(); }
public function testOverridesHostWithUri() { $r = new Request('GET', 'http://foo.com/baz?bar=bam'); $this->assertEquals(['Host' => ['foo.com']], $r->getHeaders()); $r2 = $r->withUri(new Uri('http://www.baz.com/bar')); $this->assertEquals('www.baz.com', $r2->getHeaderLine('Host')); }
/** * Adds authentication header to the request headers. * * @param \GuzzleHttp\Psr7\Request $request HTTP request object. * * @return \GuzzleHttp\Psr7\Request */ public function handleRequest($request) { $requestHeaders = HttpFormatter::formatHeaders($request->getHeaders()); $signedKey = $this->_authenticationScheme->getAuthorizationHeader($requestHeaders, $request->getUri(), \GuzzleHttp\Psr7\parse_query($request->getUri()->getQuery()), $request->getMethod()); return $request->withHeader(Resources::AUTHENTICATION, $signedKey); }
public function testAggregatesHeaders() { $r = new Request('GET', '', ['ZOO' => 'zoobar', 'zoo' => ['foobar', 'zoobar']]); $this->assertEquals(['ZOO' => ['zoobar', 'foobar', 'zoobar']], $r->getHeaders()); $this->assertEquals('zoobar, foobar, zoobar', $r->getHeaderLine('zoo')); }
/** * Assert that the request uses $accessToken as the bearer token in its * Authorization header * * @param string $accessToken * Expected OAuth access token in the Authorization header of the request * @param Request $request * Request object to check * @return void */ public function assertRequestAuthenticates($accessToken, Request $request) { $headers = $request->getHeaders(); // Assert that the Authorization header contains the access token $this->assertSame("Bearer {$accessToken}", $headers['Authorization'][0]); }
/** * Performs SOAP request over HTTP. * * @param string $request The XML SOAP request. * @param string $headers The HTTP request header. * @return mixed */ public function __doRequest($request, array $headers = []) { $this->emit('before.request', [&$request, &$headers]); $httpRequest = new Request('POST', $this->location, $headers, (string) $request); $this->headers = $httpRequest->getHeaders(); try { $this->response = $this->httpClient->send($httpRequest); $this->emit('after.request', [$this->lastResponse(), $this->lastResponseHeaders()]); } catch (\GuzzleHttp\Exception\BadResponseException $ex) { if ($ex->hasResponse()) { $this->response = $ex->getResponse(); $this->emit('after.request', [$this->lastResponse(), $this->lastResponseHeaders()]); } throw $ex; } return $this->response; }
/** * Handle an error. We handle errors by throwing an exception. * * @param string $error An error code representing the error * (use_underscore_separators). * @param string|null $message The error message. * @param GuzzleRequest|null $request Optional. The Guzzle request object. * @param ResponseInterface|null $response Optional. The Guzzle response object. * * @return void * @throws BoxViewException */ protected static function error($error, $message = null, $request = null, $response = null) { if (!empty($request)) { $message .= "\n"; $message .= 'Method: ' . $request->getMethod() . "\n"; $message .= 'URL: ' . $request->getUri() . "\n"; $message .= 'Headers: ' . json_encode($request->getHeaders()) . "\n"; $message .= 'Request Body: ' . $request->getBody() . "\n"; } if (!empty($response)) { $message .= "\n"; $message .= 'Response Body: ' . $response->getBody() . "\n"; } $exception = new BoxViewException($message); $exception->errorCode = $error; throw $exception; }