2010-07-15 33 views

回答

1

您无法进行跨域请求(XSS)。您需要使用JSONP,方法是将请求中的jsoncallback参数更改为jsoncallback=?而不是无。 The latest version of jquery will then handle JSONP correctly.

的Oodle API规格提到jsoncallback:http://developer.oodle.com/listings

+0

嗨我正在使用jquery 1.4.2并试图做同样的事情,你告诉,但在萤火虫它显示错误。 不知道该怎么办? 这是代码。 (函数(数据))。()函数(数据)(http://api.oodle.com/api?key=TEST®ion=sf&category=sale&format=json&mappable=address&jsoncallback=?),函数(数据) {data.items,function(i,item){ }); }); }); 我不知道为什么它不起作用? – user393014 2010-07-15 20:30:40

+0

我试过它quiclky和FireBug显示从服务器的500响应。如果你看看这个响应,这是一个带有Oodle模板的空白页面。在我看来,请求正确无误,但Oodle遇到了问题。这可能是因为key = TEST,但我不知道。也许Oodle有人可以帮助你。抱歉。 – Adam 2010-07-15 20:45:27

+0

感谢Adam的努力。我怀疑它成为事实,因为我从本地主机访问它可能无法得到响应,当我在我的主机网站上部署该测试页时,它可能是因为域信任。 无论如何非常感谢。 – user393014 2010-07-15 20:51:20

1
$.getJSON("http://api.oodle.com/api/v2/listings?key=TEST&region=sf&category=sale&format=json&mappable=address&jsoncallback=?", function (data) { 
    alert(data); 
}); 

这使用JSONP。这个?告诉jQuery在哪里插入回调的名字。你没有,这是不正确的。此外,你错过了一个正确的paren。

+0

感谢您的回答。但是他们告诉你可以提供你的名字,也可以不提供。我没有给过。 对不起,请问我忘了哪个右括号。 – user393014 2010-07-15 17:48:48

+0

由于跨域限制,您不能使用none;你需要使用JSONP。 paren是关闭该方法的人。 – 2010-07-15 18:06:34