为什么我的跨域请求返回数据“对象对象”?

时间:2011-08-11 01:13:01

标签: jquery ajax twitter cross-domain jsonp

我正在尝试制作一个简单的跨域数据请求。在向我的外部站点发出请求后收到数据“对象对象”后,我认为这是服务器配置的问题,所以我运行了一个jsonp请求到twitter json feed并得到相同的“对象对象一遍又一遍地重复这是我试过的。

$.ajax({
   type: "GET",
   url: "http://twitter.com/status/user_timeline/USERNAME.json?count=10&callback=?",
   dataType: "jsonp",
   success: function(data){
   alert (data)
   }
});

有什么想法吗?这段代码是否正确?

2 个答案:

答案 0 :(得分:2)

alert({ somedata: true });

这将产生相同的结果。它返回一个对象文字,而不是一个字符串。 jQuery为你解析它。

而不是提醒:

console.log(data);

现在查看您的JS控制台,您应该看到一个可以检查并钻取的对象,以查看其中的内容。你知道它是什么,你可以像任何其他JS对象一样访问它的内容。

alert(data.someKey);

答案 1 :(得分:0)

您将获得object Object表示您已object实施为Object

这实际上意味着你的jsonp请求得到了Twitter服务器的某种响应。

要查看实际回复,请在浏览器地址栏中输入此网址http://goo.gl/h3wcl

现在,要在浏览器中查看它,您需要解析它 您完全错过了解析部分

以下是使用$.each解析json结果的快速而肮脏的示例 演示:http://jsfiddle.net/naveen/gSXFG/