【问题标题】:PHP's curl_getinfo() empty on GET requestGET 请求时 PHP 的 curl_getinfo() 为空
【发布时间】:2018-09-24 23:21:29
【问题描述】:

我正在向 RIPE 的 API 发出 GET 请求,但没有获得 HTTP 状态代码或 curl_getinfo($i) 中的任何内容。

$i=curl_init();

        curl_setopt_array($i,
            array(
                CURLOPT_URL=>'https://rest.db.ripe.net/search.json?query-string='.$this->storage->ip->current, 
                CURLOPT_HTTPHEADER=>array('Accept: application/json'),
                CURLOPT_RETURNTRANSFER=>true, 
                CURLOPT_ENCODING=>'UTF-8'
            )
        );

我是不是做错了什么?

array(26) {
  ["url"]=>
  string(61) "https://rest.db.ripe.net/search.json?query-string=XX.XXX.XXX.37"
  ["content_type"]=>
  NULL
  ["http_code"]=>
  int(0)
  ["header_size"]=>
  int(0)
  ["request_size"]=>
  int(0)
  ["filetime"]=>
  int(0)
  ["ssl_verify_result"]=>
  int(0)
  ["redirect_count"]=>
  int(0)
  ["total_time"]=>
  float(0)
  ["namelookup_time"]=>
  float(0)
  ["connect_time"]=>
  float(0)
  ["pretransfer_time"]=>
  float(0)
  ["size_upload"]=>
  float(0)
  ["size_download"]=>
  float(0)
  ["speed_download"]=>
  float(0)
  ["speed_upload"]=>
  float(0)
  ["download_content_length"]=>
  float(-1)
  ["upload_content_length"]=>
  float(-1)
  ["starttransfer_time"]=>
  float(0)
  ["redirect_time"]=>
  float(0)
  ["redirect_url"]=>
  string(0) ""
  ["primary_ip"]=>
  string(0) ""
  ["certinfo"]=>
  array(0) {
  }
  ["primary_port"]=>
  int(0)
  ["local_ip"]=>
  string(0) ""
  ["local_port"]=>
  int(0)
}

【问题讨论】:

    标签: php curl get php-curl


    【解决方案1】:

    你应该在 curl_setopt_array() 之后使用 curl_exec() 和 curl_close() ,添加这个:

    // grab URL and pass it to the browser
    curl_exec($i);
    
    // close cURL resource, and free up system resources
    curl_close($i);
    

    【讨论】:

    • 是的,我知道它是如何工作的!我的问题是为什么 getinfo 是空的?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-24
    • 1970-01-01
    • 1970-01-01
    • 2018-01-06
    • 1970-01-01
    • 2023-03-18
    • 2015-03-10
    相关资源
    最近更新 更多