public function testSimple() { $this->markTestSkipped('Looks bad'); $multi = new MultiCurl(); $multi->setCompleteCallback(function ($curl) { $info = $curl->getInfo(); # printf("%.2F: %s\n", $info['total_time'], $info['url']); }); $curl = new Curl(); $curl->setUrl('http://www.golem.de/'); $response1 = $curl->getResponse(); $curl->execute(); $multi->addCurl($curl); $curl = new Curl(); $curl->setUrl('http://www.heise.de/'); $response2 = $curl->getResponse(); $multi->addCurl($curl); $curl = new Curl(); $curl->setUrl('http://www.example.com/'); $response3 = $curl->getResponse(); $multi->addCurl($curl); $curl = new Curl(); $curl->setUrl('http://localhost/'); $response4 = $curl->getResponse(); $multi->addCurl($curl); $curl = new Curl(); $curl->setUrl('dasdasdasfdf432rwedfs://localhost/'); $response5 = $curl->getResponse(); $multi->addCurl($curl); $index = 0; while ($multi->active) { $index++; $multi->step(); if ($index == 1) { $curl = new Curl(); $curl->setUrl('http://www.example.com/1'); $multi->addCurl($curl); } if ($index == 1) { $curl = new Curl(); $curl->setUrl('http://www.example.com/2'); $multi->addCurl($curl); } if ($index == 3) { $curl = new Curl(); $curl->setUrl('http://www.example.com/3'); $multi->addCurl($curl); } } }
public function testImap() { $this->markTestSkipped('No credentials'); $curl = new Curl(); $curl->setTimeout(4); $curl->setOption(CURLOPT_PROTOCOLS, CURLPROTO_IMAP | CURLPROTO_IMAPS); $curl->setUrl('imaps://imap.gmail.com/INBOX'); $curl->setMethod('EXAMINE'); $curl->setCredentials(new BasicCredentials('', '')); $response = $curl->execute(); }
/** * @param \Blar\Curl\Curl $curl Curl. * @param \Blar\Http\HttpResponse $response Response. * @return $this */ protected function configureCurl(Curl $curl, HttpResponse $response) { $curl->setMethod($this->getMethod()); $curl->setUrl($this->getUrl()); if ($this->getHeaders()) { $headers = $this->createHeadersArray($this->getHeaders()); $curl->setOption(CURLOPT_HTTPHEADER, $headers); } if ($this->getBody()) { $curl->setBody($this->getBody()); } $curl->setHeaderCallback(function ($header) use($response) { $response->setHeaderLine($header); }); $curl->setWriteCallback(function ($part) use($response) { $response->addBodyPart($part); }); return $this; }
public function testLowSpeedLimit() { $curl = new Curl(); $curl->setMethod('GET'); $curl->setOption(CURLOPT_URL, 'http://httpbin.org/drip?duration=5&numbytes=1&code=200'); $curl->setLowSpeedLimit(4096, 2); $curl->execute(); }
public function testRequest() { $this->markTestSkipped('Benötigt einen lokalen Proxyserver'); $proxy = new CurlProxy(); $socket = new NetworkSocket('127.0.0.1', 3128); $proxy->setSocket($socket); $curl = new Curl(); $curl->setProxy($proxy); $curl->setOptions([CURLOPT_URL => 'http://httpbin.org/headers', CURLOPT_HTTPHEADER => ['Foo: 23', 'Bar: 42']]); $response = $curl->execute(); $data = json_decode($response); $this->assertEquals(23, $data->headers->Foo); $this->assertEquals(42, $data->headers->Bar); }
/** * @param Curl $curl */ protected function setProxyOptions(Curl $curl) { if (!$curl->hasProxy()) { return; } $curl->getProxy()->setCurlOptions($curl); }
/** * @param Curl $curl */ public function setCurlOptions(Curl $curl) { $curl->setOptions($this->getOptions()); }