public function getLastRequest() { if ($this->fromCache) { return $this->data['request']; } return parent::getLastRequest(); }
/** * @Then /^echo last request$/ * * Echos the last request for debugging purposes * - * Example: * And echo last request */ public function echoLastRequest() { $request = $this->client->getLastRequest(); echo sprintf("%s %s%s HTTP/%s\n", $request->getMethod(), $request->getHost(), $request->getResource(), $request->getProtocolVersion()); $headerString = ''; foreach ($request->getHeaders() as $header) { $headerString = sprintf("%s%s\n", $headerString, $header); } echo rtrim($headerString, "\n"); if (empty($request->getContent()) === false) { echo sprintf("\nContent: %s", $request->getContent()); } }
/** * @Then /^echo last response$/ * @return void */ public function echoLastResponse() { $this->printDebug($this->client->getLastRequest() . "\n\n" . $this->response . "\n\n" . "access_token: " . $this->access_token); }
/** * Parse an url address, and fill up the basic metadata. * * @param string $url * @param \Buzz\Client\ClientInterface $client * @return \Yoozi\Miner\Extractor */ public function fromUrl($url, HttpClientInterface $client = null) { $browser = new Browser($client); $response = $browser->get($url, $this->config->get('headers')); $request = $browser->getLastRequest(); $this->metadata = array(); foreach (array('url', 'host', 'domain', 'favicon') as $key) { $this->metadata[$key] = $this->{'get' . studly_case($key)}($request); } if ($response->isSuccessful()) { $this->document = $response->getContent(); $this->charset = $response->getHeaderAttribute('Content-Type', 'charset'); } return $this; }