1

知道为什么以下 Ajax 调用在 Chrome 中失败,但在 Firefox 中失败?

$.ajax({
    type: "GET",
    contentType: "text/csv; charset=utf-8",
    dataType: "text",
    cache: false,                    
    url: "http://127.0.0.1:8080/param1/param2?param3=csv&otherParams=type1,type2,type3"
 })
    .done(function(data) {
        console.debug("Data received from ajax call: " + data);
    })
    .fail(function(jqXHR, textStatus, errorThrown) {
         console.error("Data request failed (" + textStatus + "): " + errorThrown);
         console.debug(jqXHR.responseText);
    });

我调用的 URL 应该以 csv 格式返回数据。我正在使用 jQuery 1.8.2。这适用于 Firefox,但由于某种原因不适用于 Chrome。我打印出来的错误信息是:

Data request failed (text/csv): text/csv 

有趣的是,在 Chrome 中我可以看到返回的数据jqXHR.responseText,所以我无法弄清楚它为什么会抛出错误。我认为这与我没有正确指定 csv 格式有关,但我认为设置dataTypeorcontentType会解决这个问题。我错过了什么?

我意识到这是一个常见问题,但尽管我在 Stack Overflow 上进行了谷歌搜索和搜索,但我一直无法找到为我解决此问题的解决方案。我发现的所有建议都说将contentTypedataType或 设置cache为 false。如您所见,这些解决方案都不适合我。非常感谢您的帮助!

4

0 回答 0