为什么mockjax回到我的Ajax消费者改变反应?(Why does mockjax return

2019-09-21 13:07发布

我使用mockjax来模拟一个Ajax调用,但我遇到我的Ajax回调接收到的数据是从我传递给mockjax(通过“responseText的”参数)的不同。 在这个例子中,我所选择的响应是'14 0.0' ,但回调接收‘14’,而不是:

$.mockjax({
    url: "/test",
    contentType: "text/json",
    responseText: "14.0"
});

$.ajax({
   url: "/test",
   datatype: "json"
}).done(function(data) {
   alert(data);
});​

为什么它接收到的数据是从我指定给不同responseText ? 见这琴的工作示例; 一个弹出式对话框将显示由回调收到的字符串,应该是“14”。

编辑:

这是弹出运行小提琴时,表明从mockjax改变的响应,我得到。

此外固定小提琴。

Answer 1:

如果你改变两个小东西,你希望上面的代码将工作。

在上面的代码片段中的contentType中提到的$ .mockjax是“text / JSON”。 在这种情况下,responseText的需要是object ,它表示JSON。 https://github.com/appendto/jquery-mockjax

$.mockjax({
    url: "/test",
    contentType: "text/json",
    responseText: { number: 14.0 }
});

此外,在$就调用datatype的关键应该是dataType http://api.jquery.com/jquery.ajax/

$.ajax({
    url: "/test",
    dataType: "json"
}).done(function(data) {
    console.log(data);
});

我在下面的jsfiddle所做的更改http://jsfiddle.net/elijahmanor/BtuW8/

我希望帮助你过去的问题。



文章来源: Why does mockjax return an altered response to my Ajax consumer?