我一直在尝试设置custom ajaxTransports for jQuery,以便在某些情况下为我们的产品缩短某些工作流程。然而,我没有成功地使这些运输得到尊重(而我有许多工作custom ajaxPrefilters)。
使用多个版本的jQuery进行测试:
使用多个浏览器进行测试:
...
他们都没有工作。
JsFiddle测试用例: http://jsfiddle.net/PVYut/
...
如果我添加dataType
来缩小范围,那么它可以正常工作。
JsFiddle测试用例: http://jsfiddle.net/PVYut/1/
...
我只是做错了吗?我很高兴被告知,只要我能让这个工作! -_-
答案 0 :(得分:4)
$.ajaxTransport("+*", function(options, originalOptions, jqXHR, headers, completeCallback ) {
console.log("Executing ajaxTransport");
return {
send: function( headers, completeCallback ) {
completeCallback(404, "error", {});
},
abort: function() {
/* abort code */
}
}
});
$.ajax("?jqTrans=" + (+(new Date())))
.done(function() {
console.log("ERROR: Should not have been successful!");
})
.fail(function() {
console.log("SUCCESS: Should have failed.");
});
这是jsFiddle