/** * Populates a response object. * * @param resource $curl A cURL resource * @param string $raw The raw response string * @param MessageInterface $response The response object */ protected static function populateResponse($curl, $raw, MessageInterface $response) { $curlResourceId = static::getResourceId($curl); $headers = self::$wipHeaders[$curlResourceId]; $response->setHeaders($headers->getLastRedirectionDataList()); $response->setContent(strlen($raw) > $headers->getSize() ? substr($raw, $headers->getSize()) : ''); }
/** * @see ClientInterface */ public function send(RequestInterface $request, MessageInterface $response) { if (!($queued = $this->receiveFromQueue())) { throw new \LogicException('There are no queued responses.'); } $response->setHeaders($queued->getHeaders()); $response->setContent($queued->getContent()); }
public function send(RequestInterface $request, MessageInterface $response) { $result = $this->callWithFixtures('send', func_get_args(), $resultArguments); /** @var MessageInterface $resultResponse */ $resultResponse = $resultArguments[1]; $response->setHeaders($resultResponse->getHeaders()); $response->setContent($resultResponse->getContent()); return $result; }
/** * Populates a response object. * * @param resource $curl A cURL resource * @param string $raw The raw response string * @param MessageInterface $response The response object */ protected static function populateResponse($curl, $raw, MessageInterface $response) { // fixes bug https://sourceforge.net/p/curl/bugs/1204/ $version = curl_version(); if (version_compare($version['version'], '7.30.0', '<')) { $pos = strlen($raw) - curl_getinfo($curl, CURLINFO_SIZE_DOWNLOAD); } else { $pos = curl_getinfo($curl, CURLINFO_HEADER_SIZE); } $response->setHeaders(static::getLastHeaders(rtrim(substr($raw, 0, $pos)))); $response->setContent(strlen($raw) > $pos ? substr($raw, $pos) : ''); }
/** * Populates the supplied response with the response for the supplied request. * * @param RequestInterface $request A request object * @param MessageInterface $response A response object */ public function send(RequestInterface $request, MessageInterface $response) { $cacheKey = $this->generateCacheKeyForRequest($request); if ($this->cache->contains($cacheKey)) { $this->hits++; $cachedResponse = unserialize($this->cache->fetch($cacheKey)); /* @var $cachedResponse \Buzz\Message\Response */ $response->setContent($cachedResponse->getContent()); $response->setHeaders($cachedResponse->getHeaders()); return; } $this->misses++; $this->client->send($request, $response); $this->cache->save($cacheKey, serialize($response), $this->lifetime); }
/** * @see ClientInterface * * @throws ClientException If file_get_contents() fires an error */ public function send(RequestInterface $request, MessageInterface $response) { $context = stream_context_create($this->getStreamContextArray($request)); $url = $request->getHost() . $request->getResource(); $level = error_reporting(0); $content = file_get_contents($url, 0, $context); error_reporting($level); if (false === $content) { $error = error_get_last(); $e = new RequestException($error['message']); $e->setRequest($request); throw $e; } $response->setHeaders($this->filterHeaders((array) $http_response_header)); $response->setContent($content); }
/** * @see ClientInterface * * @throws RuntimeException If file_get_contents() fires an error */ public function send(RequestInterface $request, MessageInterface $response) { if ($cookieJar = $this->getCookieJar()) { $cookieJar->clearExpiredCookies(); $cookieJar->addCookieHeaders($request); } $context = stream_context_create($this->getStreamContextArray($request)); $url = $request->getHost() . $request->getResource(); $level = error_reporting(0); $content = file_get_contents($url, 0, $context); error_reporting($level); if (false === $content) { $error = error_get_last(); throw new \RuntimeException($error['message']); } $response->setHeaders($this->filterHeaders((array) $http_response_header)); $response->setContent($content); if ($cookieJar) { $cookieJar->processSetCookieHeaders($request, $response); } }
/** * Populates a response object. * * @param resource $curl A cURL resource * @param string $raw The raw response string * @param MessageInterface $response The response object */ protected static function populateResponse($curl, $raw, MessageInterface $response) { list($header, $body) = preg_split("/\\R\\R/", $raw, 2); $response->setHeaders(static::getLastHeaders(rtrim($header))); $response->setContent($body); }
/** * Populates a response object. * * @param resource $curl A cURL resource * @param string $raw The raw response string * @param MessageInterface $response The response object */ protected static function populateResponse($curl, $raw, MessageInterface $response) { $pos = curl_getinfo($curl, CURLINFO_HEADER_SIZE); $response->setHeaders(static::getLastHeaders(rtrim(substr($raw, 0, $pos)))); $response->setContent(substr($raw, $pos)); }
protected static function populateResponse($curl, $raw, MessageInterface $response) { $pos = explode("\r\n\r\n", $raw); $response->setContent(array_pop($pos)); $response->setHeaders(static::getLastHeaders(array_pop($pos))); }