Firefox无法解析jQuery AJAX响应中的JSON字符串

JAV*_*eek 5 ajax firefox jquery json

我在尝试解析jQuery AJAX响应中的JSON字符串时遇到了一个奇怪的问题.这是我的代码:

$.ajax({
    type: "POST",
    url: "Save",
    data: {
        expiry: expiry,
        settings: settings
    }
}).done(function (msg) {
    alert(msg);
    var obj = jQuery.parseJSON(msg);
    if (obj.status == "done") {
        window.location = obj.redirect;
    }
});
Run Code Online (Sandbox Code Playgroud)

在IE,Chrome和Safari上,我收到JSON字符串警告,但在Firefox上,我得到了

[obj XMLDocument]

在警报中.

这是FF控制台:

在此输入图像描述

obj为null,但我可以在文本属性下的控制台中看到响应JSON字符串

responses=Object { xml=document, text="{"status":"done","redir...ippetImage\/s\/6abb68"}
Run Code Online (Sandbox Code Playgroud)

这种行为的原因是什么?

JAV*_*eek 5

问题出在servlet端.我必须设置contentType才能使其正常工作.

response.setContentType("text/JSON");
Run Code Online (Sandbox Code Playgroud)