示例#1
0
文件: Curl.php 项目: Flyingmana/phive
 /**
  * @param Url   $url
  * @param array $params
  *
  * @return HttpResponse
  */
 public function get(Url $url, array $params = [])
 {
     $ch = curl_init($url . '?' . http_build_query($params));
     curl_setopt_array($ch, $this->config->asCurlOptArray());
     $hostname = parse_url((string) $url, PHP_URL_HOST);
     if ($this->config->hasLocalSslCertificate($hostname)) {
         curl_setopt($ch, CURLOPT_CAINFO, $this->config->getLocalSslCertificate($hostname));
     }
     return new HttpResponse(curl_exec($ch), curl_getinfo($ch, CURLINFO_HTTP_CODE), curl_error($ch));
 }
示例#2
0
 public function testPutsProxyWithCredentialsInCurlOptArray()
 {
     $config = new CurlConfig('foo');
     $config->setProxy('proxy.example.com', 'someuser', 'somepassword');
     $expected = [CURLOPT_PROXY => 'proxy.example.com', CURLOPT_PROXYUSERPWD => 'someuser:somepassword'];
     $actual = $config->asCurlOptArray();
     $this->assertArraySubset($expected, $actual);
 }