我正在使用来自 Github 的 James Mallisons Twitter-API:http: //github.com/j7mbo/twitter-api-php
通过身份验证凭据后,我尝试获取围绕定义的地理坐标的推文列表:
$fields = "?q=test&geocode=".urlencode("$lat,$lon,$radius")."&count=100";
$url = 'https://api.twitter.com/1.1/search/tweets.json';
$method = 'GET';
$result = $twitter->buildOauth($url, $method)
->setGetfield($fields)
->performRequest();
这会生成以下 CURL 选项,以在 api 类中设置:(使用 XXX 屏蔽身份验证凭据)
CURLOPT_HTTPHEADER => $header,
CURLOPT_HEADER => 'Authorization: OAuth oauth_consumer_key="XXX", oauth_nonce="XXX", oauth_signature_method="HMAC-SHA1", oauth_token="XXX", oauth_timestamp="XXX", oauth_version="1.0", oauth_signature="XXX"',
CURLOPT_URL => "https://api.twitter.com/1.1/search/tweets.json?q=test&geocode=48.39677%2C9.98042%2C35km&count=100",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYPEER => false
使用此选项发出的请求会导致以下错误:
["message"]=>
string(26) "Could not authenticate you"
["code"]=>
int(32)
你对这个错误有什么想法吗?从 /friends/ids.json 获取我的好友列表效果很好。所以认证是正确的。似乎是查询参数错误。