Можно ли заставить mockjax вызвать $.ajaxPrefilter?

Я только что обнаружил библиотеку mockjax, и она кажется почти идеальной для моих нужд тестирования. Я говорю "почти", потому что есть одна вещь, которую я не могу имитировать: $.ajaxPrefilter обработчики.

Обычно в jQuery вы можете указать:

$.ajaxPrefilter(function() {
    doSomethingOnEveryAjaxCall();
});

а потом всякий раз, когда кто-то использует $.ajax (или же $.get, $.postи т. д.) что doSomethingOnEveryAjaxCall функция будет вызвана.

Однако, если я сделаю:

$.mockjax({url: '/test', responseText: 'test'});
$.ajax({url: '/test'});

префильтр настраиваю (doSomethingOnEveryAjaxCall) не вызывается.

Есть ли способ изменить этот код так, чтобы префильтр вызывался даже при запросах / ответах mockjax?

1 ответ

Оказывается, mockjax был способен запускать предварительные фильтры ajax... Я просто забыл указать все необходимые заголовки, чтобы мой предварительный фильтр действительно срабатывал. Как только я попытался использовать правильные заголовки, предварительный фильтр сработал, как и ожидалось!

Другие вопросы по тегам