是否有可能使mockjax触发$ .ajaxPrefilter?

时间:2013-12-23 22:07:31

标签: jquery mockjax

我刚刚发现了mockjax库,它似乎几乎完美适合我的测试需求。我说“差不多”,因为有一件事我似乎无法模拟:$.ajaxPrefilter处理程序。

通常在jQuery中你可以指定:

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

然后每当有人使用$.ajax(或$.get$.post等)时,都会调用doSomethingOnEveryAjaxCall函数。

但是,如果我这样做:

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

我设置的预过滤器(doSomethingOnEveryAjaxCall)没有被调用。

有没有办法修改该代码,以便即使在mockjax请求/响应中也可以调用前置过滤器?

1 个答案:

答案 0 :(得分:1)

事实证明mockjax 能够触发ajax预过滤器...我只是忘了提供所有必要的标题,以使我的预过滤器实际触发。一旦我尝试使用正确的标题,预过滤器就会按预期触发!