如果您想了解有关api的更多信息,请访问该网站,页面底部有一个api链接。
- 我无法控制服务器,我认为问题是在jquery作为回调发送的函数中没有返回json。
var path="http://netrunnerdb.com/api/search/r<t d:c"
$.ajax({
type: "GET",
url: path,
cache: true,
dataType: "jsonp",
error: function(xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(ajaxOptions);
alert(thrownError);
},
});
以下是请求发送的网址:
http://netrunnerdb.com/api/search/r%3Ct%20d:c%20?callback=jQuery1110010968961869366467_1390750866847
我收到错误200抛出,我收到一个解析错误,然后被告知没有调用json回调。答案是否恰好是错误的?有解决方法吗?在chrome中,如果我通过直接浏览上面的URL到控制台来复制整个响应并设置一个等于它的变量,它就可以很好地解析为数组。
答案 0 :(得分:2)
您将获得响应为JSON而不是JSONP,因为API无法识别来自jQuery的回调。 API期望jsonp
参数中的回调名称,而不是callback
。
将此添加到Ajax调用中的属性,以使jQuery在URL中使用jsonp
而不是callback
:
jsonp: 'jsonp',