【问题标题】:$.getJSON not working with JSONP data$.getJSON 不适用于 JSONP 数据
【发布时间】:2011-12-22 20:28:52
【问题描述】:

我正在尝试对来自http://soarforward.com/ClassDocuments 的数据进行 JSONP 请求,但它不起作用。

如果您转到 URL,您可以看到 JSON。我自己将一个 ASP.net 对象转换为 JSON,所以如果 javascript 无效,我可以修改它。

这是我的示例代码: http://jsfiddle.net/guanome/JDLqf/

function getFiles() {
    var url = "http://soarforward.com/ClassDocuments";
    $.getJSON(url + "?callback=?", null, function(result) {
        console.log(result);
    });
}
$(document).ready(function() {
    getFiles();
});

【问题讨论】:

  • 尝试将此参数添加到您的 $.getJSON() 调用中:dataType:'jsonp' 如果仍然无法正常工作,请尝试添加:jsonp:'jsonp'
  • 服务器似乎没有返回 JSONP。 soarforward.com/ClassDocuments?callback=foo 仍然返回 JSON。
  • @paparush:这样的选项只有$.ajax接受。
  • @FelixKling - 你是绝对正确的。我说得太早了。
  • 详情请见Wikipedia。服务器必须返回类似valueOfCallbackParameter(jsonHere);

标签: asp.net json jquery jsonp


【解决方案1】:

我忘记将返回的 JSON 包装在函数调用中。

我回来了

{"foo" : "bar"}

而不是

fooBar({"foo" : "bar"});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-10
    • 1970-01-01
    • 2011-01-26
    • 1970-01-01
    • 2011-05-15
    • 1970-01-01
    • 2016-03-05
    • 2014-02-22
    相关资源
    最近更新 更多