1

我正在使用以下代码从特定主题标签获取最新推文

$(document).ready(function(){
getLatestTweets();
function getLatestTweets(){
    var url = "http://search.twitter.com/search.json?q=%23syria&result_type=recent&rpp=3&callback=?";

    $.getJSON(url, function(json){
        alert('reached');
        var html = '<ul>';
        $.each(json.results, function( key, result){
            html += '<li><a href="#">' + '> ' + result.text + ' ...' + '</a></li>'; 
        });
        html += '</ul>';
        $('#archive-twitter').append(html);
    });
}
});  

这段代码两天前工作正常,但今天停止工作。现在 getJSON 方法不会成功,即使当我使用以下链接时

http://search.twitter.com/search.json?q=%23syria&result_type=recent&rpp=3

在浏览器中,我得到了实际的 json 数据

我不知道是什么问题?

更新:我添加了一个测试链接来澄清问题 http://latakiancoder.com/twitter-test.php

4

2 回答 2

1

我已经尝试了代理服务器端的请求并且可以正常工作:

JS代码:

$(document).ready(function(){
                getLatestTweets();
                function getLatestTweets(){
                    var url = "http://search.twitter.com/search.json?q=%23syria&result_type=recent&rpp=3";

                    $.getJSON("proxy.php", { url: url }, function(json){
                        var html = '<ul>';
                        $.each(json.results, function( key, result){
                            html += '<li><a href="#">' + '> ' + result.text + ' ...' + '</a></li>'; 
                        });
                        html += '</ul>';
                        $('#archive-twitter').append(html);
                    });
                }
            });  

proxy.php 代码:

<?php
    $url = $_GET['url'];
    $json = file_get_contents($url);
    echo $json;
?>
于 2013-05-04T11:21:13.517 回答
0

你的网址在我的最后工作正常。

确保include_entities设置为true获取主题标签结果。

http://search.twitter.com/search.json?q=ipl&result_type=recent&include_entities=true

查看上面的 url 响应 Header 后:

X-Frame-Options SAMEORIGIN
X-XSS-Protection    1; mode=block

似乎 twitter 已经停用 API v1。

于 2013-05-04T09:31:56.477 回答