Php CURLOPT_RETURNTRANSFER不返回响应

Php CURLOPT_RETURNTRANSFER不返回响应,php,apache,curl,instagram,Php,Apache,Curl,Instagram,我试图查询Instagram API,但CURLOPT_RETURNTRANSFER似乎没有按照预期的方式工作。CURLOPT_RETURNTRANSFER已设置为true,但我没有得到响应。我得到的只是一个布尔值。从我所阅读的内容来看,我已经在下面将CULLOPT_RETURN转换为true。请给我一些建议。谢谢 public function __construct($uri) { $this->handler = curl_init($uri); $th

我试图查询Instagram API,但CURLOPT_RETURNTRANSFER似乎没有按照预期的方式工作。CURLOPT_RETURNTRANSFER已设置为true,但我没有得到响应。我得到的只是一个布尔值。从我所阅读的内容来看,我已经在下面将CULLOPT_RETURN转换为true。请给我一些建议。谢谢

public function __construct($uri) {
    $this->handler = curl_init($uri);
           $this->_setOptions();
}

protected function _setOptions() {
    curl_setopt($this->handler, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($this->handler, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($this->handler, CURLOPT_USERAGENT, self::DEFAULT_USER_AGENT);

}

public function getResponse() {
    $response = curl_exec($this->handler);
    curl_close($this->handler);
    return $response;
}
你的布尔值是假的吗

如果为false,则一定是有错误

在curl_exec行后添加以下内容:

if(curl_errno($this->handler)) 
{
   echo curl_error($this->handler);
}

在调用新的类名('s)之后,是否调用getResponse()方法http://someurl.com)

试试这个

$x = new ClassName('http://www.google.com');
var_export($x->getResponse();
编辑:您还可以调用addanerroroutput方法来查看是否发生了一些curl错误

public function last_error() {
    echo curl_error($this->handler);
}

使用
print\r(curl\u getinfo($this->handler))紧接着
curl\u exec($this->handler)
来找出问题所在。

您可以通过编写以下函数来解决问题:

protected function _setOptions() {
    curl_setopt($this->handler, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($this->handler, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($this->handler, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($this->handler, CURLOPT_USERAGENT, self::DEFAULT_USER_AGENT);
}
这样可以避免检查ssl协议

作为一个额外选项,您可以设置CURLOPT\u SSL\u VERIFYHOST

curl_setopt($this->handler, CURLOPT_SSL_VERIFYHOST, 0);

建议在生产环境中始终在安全的SSL条件下工作,如中所述,CURLOPT_SSL_VERIFYHOST应设置为2以确保安全的SSL连接。

我收到的错误消息是:SSL证书问题,请验证CA证书是否正常。详细信息:错误:14090086:SSL例程:SSL3_获取_服务器_证书:证书验证失败我正在尝试运行此URL:它可以在浏览器上运行,但不能在应用程序上运行。有什么想法吗?我想这就是答案,即使这个话题是从2012年开始的!