以XML格式从Twitter检索user_timeline

时间:2013-01-03 16:42:00

标签: javascript xml json twitter

我正在用HTML和Javascript编写一个简单的应用程序。我正在尝试通过jQuery的.ajax()方法检索我的user_timeline。问题是我想用XML检索我的时间线,但我仍然没有完成这个简单的任务。这是我的代码:

$.ajax({
        type: 'GET',
        dataType: 'xml',
        url: 'http://api.twitter.com/1/statuses/user_timeline.xml?screen_name=stepanheller',
        success: function(data, textStatus, XMLHttpRequest) {
            console.log(data);
        },
        error: function(req, textStatus, error) {
            console.log('error: '+textStatus);
        }

});

奇怪的是,当我尝试完全相同但使用JSON而不是XML时,脚本可以工作。

$.ajax({
        type: 'GET',
        dataType: 'jsonp',
        url: 'http://api.twitter.com/1/statuses/user_timeline.json?screen_name=stepanheller',
        success: function(data, textStatus, XMLHttpRequest) {
            console.log(data);
        },
        error: function(req, textStatus, error) {
            console.log('error: '+textStatus);
        }

});

你能给我一些提示,说明我对这个请求做错了吗?我知道我使用的是旧版API,但我现在不会处理OAuth。感谢。

1 个答案:

答案 0 :(得分:1)

通常无法发送跨域ajax请求。这是一般规则。

JsonP 是解决此限制的经典方法,根据我的知识,没有Xml的等价物。根据您的浏览器兼容性限制,您可以使用XHR2来实现此目的。

否则,唯一的解决方案是设置服务器代理。

Client --Ajax--> Your server --HttpRequest--> Twitter