Пользовательская функция ajaxTransport без указанного типа данных не запускается (AT ALL!)
Я пытаюсь настроить пользовательские ajaxTransports для jQuery, чтобы сократить некоторые рабочие процессы в определенных сценариях для нашего продукта. Тем не менее, у меня был нулевой успех в том, чтобы удостовериться, что эти транспорты (в то время как у меня много рабочих пользовательских ajaxPrefilters).
Протестировано несколькими версиями jQuery:
Протестировано несколькими браузерами:
- Firefox 15
- Chrome 21
- iOS 5 webviews
...
Ни один из них не работал.
JsFiddle: http://jsfiddle.net/PVYut/
...
Если я добавлю dataType
, чтобы сузить его, то он отлично работает.
JsFiddle: http://jsfiddle.net/PVYut/1/
...
Я просто делаю что-то не так? Я был бы счастлив, если бы мне сказали об этом, пока я могу это сделать! -_-
Ответы
Ответ 1
$.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