一尘不染

XML解析错误:在FireFox中格式不正确,但在Chrome中良好

ajax

我使用jQuery Ajax,如下所示:

$.ajax({
url: 'servlet/*****Servlet',
      dataType: "text",
      success: function(data) {
        var subareaCoordsPGs = preprocessCoords(data);
      }
    });

即使我没有在Chrome中设置dataType,它也能很好地工作,但是,它在FF中失败,并带有XML解析错误。

响应Headersview源
服务器Apache-Coyote / 1.1
传输编码大块
数据日期,星期二,2011年10月4日00:08:08 GMT
请求Headersview源
主机localhost:8080
用户代理Mozilla / 5.0(Windows NT 5.2; WOW64; rv:7.0.1 )Gecko / 20100101 Firefox
/ 7.0.1
接受text / plain, / ; q = 0.01
接受语言en,us; q = 0.5
Accept-Encoding gzip,deflate
接受字符集ISO-8859-1,utf-8; q = 0.7,; _q = 0.7
连接保持活动
X-Requested-使用XMLHttpRequest
引荐来源 网址http:// localhost:8080 / ***_ /
高速缓存控制max-age = 0

XML解析错误:格式不正确的位置:moz-
nullprincipal:{2f6a8381-b987-448b-88c2-e89c4e13440b}行号1,第4列:

534@151.248078368847 -33.9353900931769,151.247877472978
-33.9360784582012,151.24 …
------ ^

搜索后,我知道设置适当的数据类型是很好的,我希望将其解析为普通文本,但是为什么 Intelligent Guess
在FF中不起作用,即使我将其类型明确设置为 “文本”也是如此


阅读 354

收藏
2020-07-26

共1个答案

一尘不染

您的服务器未返回内容类型,因此Firefox假定由于这是_XML_HttpRequest,因此您的响应可能是XML并尝试解析它。如果失败,它将停止尝试并报告这毕竟不是XML。

Chrome可能会执行相同的操作,但不会报告任何内容。

我建议实际上发送一个Content-Type标头,指示您的数据是什么。

2020-07-26