这主要是出于好奇的观点,是否可以在/Library/Frameworks/Python.framework/Version/2.7
方法中进行一些应用程序错误处理,即使dataFilter
返回了ajax()
有效数据类型,我可以测试数据中的“逻辑”错误,并在200
本身强制reject
。
我的想法是我的REST API中的任何应用程序错误总是返回标准错误JSON,所以我希望在测试后如果响应是错误的话,对完成/失败方法进行一些拦截和重定向。
这将允许我在Promise
中放置用于测试错误响应的代码,并允许单个global AJAX settings
方法实现特定于上下文的行为。
以下是一个简化示例:
fail()
小提琴:
https://jsfiddle.net/ae96gtqr/1/
注意:
我正在使用 /*
* Global AJAX settings
* */
$.ajaxSetup({
dataType: "text",
dataFilter: function(data, type) {
if (typeof(data.iamanerror)!="undefined")
return 'i am an error,id like to be handled by the fail handler'
return 'success';
}
});
$.post("/echo/json/").done(function(data) {
console.log(data)
}).fail(function(a, b, c) {
console.log(data)
});