如何触发$ .getJSON()。fail()?

时间:2013-09-04 00:24:57

标签: ajax json jquery

如何通过在JQuery调用中强制404错误等来更改我的AJAX请求,以便我的函数.fail()响应,以便我可以测试它?

$.getJSON(urlthing, {
    maxResults: 5,
    pageToken: token,
    key: "something"
})
.done(function(data){
     DO SOME CRAZY STUFF
})
.fail(function(jqxhr, textStatus, error){console.log("Request Failed: "+ textStatus+ ', ' + error);});
};

2 个答案:

答案 0 :(得分:2)

只需将url字符串更改为无效值即可获得404

$.getJSON('urlthing' + 'testurl', {
    maxResults: 5,
    pageToken: token,
    key: "something"
})
.done(function(data){
     DO SOME CRAZY STUFF
})
.fail(function(jqxhr, textStatus, error){console.log("Request Failed: "+ textStatus+ ', ' + error);});
};

答案 1 :(得分:2)

出于单元测试的目的,您可以使用Sinon JS之类的包来拦截AJAX请求并提供虚假响应。