Javascript 我一直收到这个错误,XML解析错误:语法错误,但网站仍然运行良好
我是新开发网站。 我知道我必须在web.xml文件中映射servlet。 web.xml文件如下所示Javascript 我一直收到这个错误,XML解析错误:语法错误,但网站仍然运行良好,javascript,jquery,ajax,xml,servlets,Javascript,Jquery,Ajax,Xml,Servlets,我是新开发网站。 我知道我必须在web.xml文件中映射servlet。 web.xml文件如下所示 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.co
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
<display-name>TestApp</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Serve</servlet-name>
<servlet-class>Serve</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Serve</servlet-name>
<url-pattern>/TestApp</url-pattern>
</servlet-mapping>
</web-app>
问题是servlet仍然运行良好。警报(输出)按预期工作。请解释浏览器显示错误的原因,并告诉我解决方案
如果这是一个重复的问题,请提供原始问题的链接。我最近遇到了同样的问题。jQuery似乎正确地处理了数据和数据类型,但实际上是Firefox返回了语法错误,这解释了为什么代码按预期执行,但仍然向控制台打印错误 如果您查看开发人员控制台,您可以看到Firefox正在将纯文本数据解释为另一种格式(可能是XML)。Firefox厌倦了将数据解析为XML,但不能,因为它不是有效的XML,这会导致“语法错误”被打印到控制台 为我解决此问题,需要编辑服务器,使其返回以下标题:
内容类型:“文本/普通”
这似乎只是Firefox的一个问题,Chrome没有遇到这个问题。这里有一个Firefox bug,它似乎触及了这个问题
Firefox 70中仍然存在问题,至少在从文件系统请求文件时是如此。不需要jquery,可以使用普通的
XMLHttpRequest
复制该行为。在send
之前调用它的overrideMimeType
方法为我解决了这个问题。对我来说,这是一个非常干净的解决方案。例如:
var xhr = new XMLHttpRequest();
xhr.open("GET", window.location, true);
xhr.overrideMimeType("text/html");
xhr.onreadystatechange = function()
{
if (xhr.readyState == 4) alert(xhr.responseText);
}
xhr.send();
谢谢正如你所说,我真的在使用Firefox作为我的测试浏览器。再次感谢。您可能正在
文件中运行应用程序://
,因为这是ajax请求,所以可能会发生这种情况。如果您已经安装了nodejs,那么您可以安装服务器并查看控制台日志!干得好,谢谢。我一直在尝试(通过XHR)检索.mjs
文件,Firefox莫名其妙地返回:XML解析错误:语法错误
。这一行:xhr.overrideMimeType('application/javascript')
。
var xhr = new XMLHttpRequest();
xhr.open("GET", window.location, true);
xhr.overrideMimeType("text/html");
xhr.onreadystatechange = function()
{
if (xhr.readyState == 4) alert(xhr.responseText);
}
xhr.send();