如何从dataFilter函数中拒绝ajax()Promise?

时间:2017-03-09 13:42:26

标签: javascript jquery ajax promise

这主要是出于好奇的观点,是否可以在/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) });

0 个答案:

没有答案