【发布时间】:2013-08-10 21:26:02
【问题描述】:
我在使用 $.getJSON() 时不断出错。我正在使用 JSONP。代码如下:
$.getJSON('http://s3.amazonaws.com/eloqu/TestFile.js?callback=?', function(data){
console.log(data);
})
.fail(function( jqxhr, textStatus, error ) {
console.log( "Request Failed: " + textStatus + ', ' + error);
});
我得到的只是一个“解析器错误”。如果我将 url 的结尾更改为 callback=mycallback,我只会得到“错误”,没有类型。
【问题讨论】:
-
尝试在你的失败处理程序中输出
error。您的网址中的第二个?可能需要转义到%3f。 -
你返回的 json 是什么?它是否包含在
mycallback函数中? -
@James 您使用的是
$.getJSON(),它是json,而不是jsonp您可能需要使用$.ajax并将dataType设置为jsonp。 -
转义第二个问号修复了我的解析器错误,但它仍然不起作用。错误仍然是空白。您可以从该 URL 看到 JSON。
-
@JasonP 根据 jQuery 文档,它应该将带有回调参数的任何 url 解释为 JSONP。他们的 Flickr 示例使用了它。