我正在Windows IIS服务器上本地开发并尝试在我的应用程序中使用Twitter API,如下所示:
$settings = array(
'oauth_access_token' => "...",
'oauth_access_token_secret' => "...",
'consumer_key' => "...",
'consumer_secret' => "..."
);
$twitter = new TwitterAPIExchange($settings);
$url = "https://api.twitter.com/1.1/search/tweets.json";
$getfield = "?q=%23test";
$requestMethod = "GET";
$result = $twitter->setGetfield($getfield)->buildOauth($url, $requestMethod)->performRequest();
echo json_encode($result);
运行此命令会出现以下错误:
致命错误:未捕获异常:SSL证书问题:无法在第321行的C:\ inetpub \ wwwroot \ ... \ vendor \ j7mbo \ twitter-api-php \ TwitterAPIExchange.php中获取本地颁发者证书 例外:SSL证书问题:无法在第321行的C:\ inetpub \ wwwroot \ ... \ vendor \ j7mbo \ twitter-api-php \ TwitterAPIExchange.php中获取本地颁发者证书
我发现你需要添加一个SSL certificate,我已经下载了cacert.pem,但我对如何在IIS中启用它感到很遗憾。有什么指针吗?
编辑:所以我现在从IIS中导入了我们公司的证书,我的服务器现在运行在https上。我将此添加到php.ini
:
curl.cainfo = "C:\...\certificate.PFX"
但重新启动服务器后,我仍然遇到同样的错误。
答案 0 :(得分:0)
好的,事实证明,安装我们公司证书的所有麻烦都是不必要的。我跟着these instructions(感谢RamRaider)并且它有效。 Hurray \ o /