PHP代码在这里并使用Twitter API Exchange PHP File
<?php
require_once('TwitterAPIExchange.php');
$settings = array(
'oauth_access_token' => 'whatever',
'oauth_access_token_secret' => 'whatever',
'consumer_key' => 'whatever',
'consumer_secret' => 'whatever'
);
$query = "%23georgeezra";
$url = "https://api.twitter.com/1.1/search/tweets.json";
$requestMethod = "GET";
$getfield = '?q='.$query.'&count=5';
$twitter = new TwitterAPIExchange($settings);
$result = $twitter->setGetfield($getfield)->buildOauth($url, $requestMethod)->performRequest();
echo $result;
?>
我已在Twitter上的Dev工具上运行此查询,并且查询按要求执行,但在Chrome和Firefox上,它在Apache2服务器上运行并使用JQuery版本2.1.1时出现500(内部服务器错误)错误
JQuery代码:
$(function(){
$.ajax({
url: 'ezra.php',
type: 'GET',
success: function(response) {
if (typeof response.errors === 'undefined' || response.errors.length < 1) {
var $tweets = $('<ul></ul>');
$.each(response, function(i, obj) {
$tweets.append('<li>' + obj.text + '</li>');
});
$('.tweets-container').html($tweets);
} else {
$('.tweets-container p:first').text('Response error');
}
},
error: function(errors) {
$('.tweets-container p:first').text('Request error');
}
});
});
答案 0 :(得分:1)
$result = json_decode(...)
应致电json_encode
,而不是json_decode
。并且$assoc = TRUE
不适合json_encode
的第二个参数。
您还需要添加:
dataType: "json"
到$.ajax
来电。
答案 1 :(得分:0)
原来,TwitterAPIExchange.php文件需要cURL才能工作。
我跑了:sudo apt-get install php5-curl
后跟sudo /etc/init.d/apache2 restart
并且做到了。