【发布时间】:2014-10-30 07:09:00
【问题描述】:
我应该以jsonp 请求数据以执行跨域请求。但实际返回的结果是像{"q":"iphone","r":["iphone 5","iphone","обмен на iphone","iphone 4","iphone 5s"]}这样的json。
我尝试在dataType 中使用多个值,例如:
$.ajax({
url: url,
type: 'GET',
dataType: 'jsonp json',
jsonp: false,
...
但它返回 parsererror(与 jsonp 相同)。
我也尝试在有和没有callback的情况下进行通话:
$.ajax({
url: url,
type: 'GET',
dataType: 'jsonp json',
cache: true,
jsonpCallback: 'callbackFunctionName',
jsonp: 'callback',
我该怎么做才能正确处理这样的结果?
更新。我尝试使用script 而不是jsonp,效果更好 - 调用了success/done 函数(而不是error/fail),但我无法获得响应文本 - 数据传递给success() 是 undefined 以及传递给 complete() 的 jqXHR.responseText 是空的。
【问题讨论】:
-
你的网址是否包含回调函数?
-
你有没有偶然发现这个:stackoverflow.com/questions/5943630/…?
-
@sri,我试过有没有回调函数。
-
@sri,
getJSON可以在这里提供什么帮助?如果我最后用?传递它,相信它也会期待jsonp 响应。 -
@sri,我已经更新了问题
标签: jquery ajax json cross-domain jsonp