关于json:jquery(ajax)重定向到另一个域

jquery (ajax) redirect to another domain

jquery json请求的格式如下:

JSON请求:

1
$.getJSON('http://xyz.com',function(result) {});

如果请求失败(服务器没有响应),如何重定向到另一个域。例如"http://zxy.com"。(我们在另一台服务器中维护相同的代码)


我认为如果服务器根据响应告诉您,最好使用$.ajax()、error方法或success

然后使用它重定向浏览器。

1
window.location ="http://www.google.com"

$.getjson()定义为:

1
2
3
jQuery.getJSON=function(url,data,callback){
    return jQuery.get(url,data,callback,"json");
};

就这样,默默地失败了。

要对错误作出反应,您需要直接使用$.Ajax()函数,该函数允许您定义OnError处理程序,如:

1
2
3
4
5
6
7
8
9
10
11
12
13
$.ajax({
    url: '...',

    contentType:'json',

    success:function(result,stat,xhr){
        ...
    },

    error:function(xhr,opts,err){
        ...
    }
});

请参阅jquery-ajax错误处理,显示自定义异常消息以了解更多信息。


你试过这个吗?

1
2
3
4
5
6
7
8
9
10
11
12
13
function addImage(item) {
 $("<img/>").attr("src", item.media.m).appendTo("#images");
}

    var jqxhr = $.getJSON("http://xyz.com",function(data) {
    $.each(data.items, function(i,item){  //sample
       addImage(item);
    })
    .error(function() {
              var jqxhrFailover = $.getJSON("http://zzz.com", function(data) {
    $.each(data.items, function(i,item){  //sample
       addImage(item);
    }).error(function(){ alert('both failed!'); });