【问题标题】:Twitter API returns NULL on XAMPPTwitter API 在 XAMPP 上返回 NULL
【发布时间】:2013-09-05 14:41:28
【问题描述】:

我正在尝试调用 Twitter API。

简而言之,我的问题与here 描述的问题相同。拨打电话时,我会在结果的var_dump() 上得到NULL

但是

cURL 工作正常,我已经包含了最新版本的 twitter-api-php 脚本,并且所有令牌、密钥和秘密都是正确的。

我正在本地安装 XAMPP。这会导致问题吗?但它似乎对其他人有效。在我的情况下php配置错误吗?还是我只是错过了一个分号(我怀疑是因为我没有收到任何错误)?

这是我的代码:

ini_set('display_errors', true);
require_once('.\libs\TwitterAPIExchange.php');

$settings = array(
    'oauth_access_token' => '############',
    'oauth_access_token_secret' => '############',
    'consumer_key' => '########',
    'consumer_secret' => '###########'
);

$url = 'https://api.twitter.com/1.1/statuses/user_timeline.json';

$requestMethod = "GET";

$getfield = '?screen_name=J7mbo';

$twitter = new TwitterAPIExchange($settings);
$response = $twitter->setGetfield($getfield)
                    ->buildOauth($url, $requestMethod)
                    ->performRequest();

var_dump(json_decode($response));

【问题讨论】:

  • 您是否在 XAMPP 中正确启用了 cURL? - 您的 phpinfo() 是否显示这种情况?
  • 据我所知:cURL support enabled in phpinfo()
  • 您能编写一个简单的 cURL 测试脚本来确保它按预期工作吗?以前遇到过此问题的人似乎没有正确设置 cURL - 所以在继续之前让我们 100% 排除此问题。
  • 我运行了一些测试脚本,他们都说,模块已加载,唯一我无法运行的脚本是page 末尾的那个。这给你一个提示吗?
  • 现在可以使用了,谢谢!将其作为答案发布,以便人们找到它!

标签: php api twitter


【解决方案1】:

就像Jimbo在上面的cmets中指出的那样,可以找到解决方案here

根据文章,Windows PHP 发行版不附带最新的 CA 根证书捆绑包。 但是,可以通过here 下载该捆绑包。我把它放在C:\xampp\php\cacert.pem下。

第二步是在 php.ini 文件的末尾添加curl.cainfo=c:\xampp\php\cacert.pem。 更改保存 .pem 文件的文件夹的路径。

重启Apache,现在问题应该解决了!

谢谢!

【讨论】:

  • 这就是 StackOverflow 比任何留言板更好的原因,希望我的新答案没问题!谢谢
  • 安德烈 - 您应该在左侧打勾,将其标记为“正确答案”!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-24
  • 1970-01-01
  • 1970-01-01
  • 2017-04-04
  • 2013-12-19
  • 1970-01-01
相关资源
最近更新 更多