【问题标题】:JSON parsing from cross domain using jquery ajax使用 jquery ajax 从跨域解析 JSON
【发布时间】:2013-02-15 17:45:41
【问题描述】:

我试图从跨域解析 json,但我在 jquery 插件中遇到 405 (Method Not Allowed) 之类的错误(我只使用来自 google 的最新插件) 任何解决方案或建议都会对你有很大帮助我。

谢谢 岜沙

这是我的代码

$(document).ready(function() {
    $.ajax({
    type: "GET",
    url: "http://myurl.com/webservice&callback=?",          
    contentType: "application/json; charset=utf-8",
    crossDomain: true,
    dataType: "jsonp",
    data: "{}",
    Accept: "",
    beforeSend: setHeader,
    success: OnGetAllMembersSuccess,
    error: OnGetAllMembersError,                
    });
});     
function setHeader(req) {
    req.setRequestHeader("Authentication", "Basic credentials");
    req.setRequestHeader("Content-Type", "application/json");
    req.setRequestHeader("Accept", "application/json");
}    

function OnGetAllMembersSuccess(data, status) {
    alert(status);
    $.each(data.result, function(key, value) {              
        $("#result").append(key+" : "+value);
        $("#result").append("<br />");
    });
}

function OnGetAllMembersError(request, status, error) {
    alert(status);
}   

【问题讨论】:

    标签: json jquery


    【解决方案1】:

    使用jsonp作为dataType时,需要在服务端绑定一个回调函数。 例如,如果您需要像 {"id":"myId"} 这样的 json 响应,则在服务器端应该返回像 "mycallback({"id":"myId"})";

    你还需要在客户端编写该函数。

    function mycallback(json)
    {alert(json);}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-06
      • 2014-04-25
      • 2014-03-18
      • 1970-01-01
      • 2012-04-05
      • 1970-01-01
      • 2011-03-31
      • 2013-06-04
      相关资源
      最近更新 更多