在Chrome中Ajax调用失败,但在Firefox中有效

时间:2013-09-27 17:28:54

标签: javascript jquery ajax google-chrome

知道为什么以下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格式有关,但我认为设置dataTypecontentType会解决这个问题。我错过了什么?

我意识到这是一个常见的问题,但是尽管我使用谷歌搜索和搜索Stack Overflow,我仍然无法找到解决这个问题的解决方案。我发现的所有建议都说将contentTypedataTypecache设置为false。如您所见,这些解决方案都没有对我有用。非常感谢您的帮助!

0 个答案:

没有答案