Ich bekomme immer diese Fehlermeldung, XML-Parsing-Fehler: syntax-Fehler, aber immer noch die website gut läuft
Ich bin neu in der Entwicklung von Webseiten.
Ich weiß, dass ich auf Karte servlets in der web.xml Datei.
Die web.xml Datei ist diese
<?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>
Aber wenn ich die jquery $.ajax () - Funktion, ich bekomme diese Fehlermeldung.
XML-Parsing-Fehler: syntax-Fehler
Ort: http://localhost:8080/TestApp/Serve
Zeilennummer 1, Spalte 1:
Den AJAX-Aufruf
$.ajax({
url: "Serve",
type: "POST",
success: function(out){
alert(out);
},
error: function(){
alert("No");
}
});
Das problem ist das servlet läuft immer noch gut. Alert(out) funktioniert wie erwartet. Bitte erklären, warum der browser zeigt den Fehler und bitte sagen Sie mir eine Lösung.
Ist dies eine doppelte Frage, bitte geben Sie einen link auf die ursprüngliche Frage.
- Können Sie Ihre app in
file:///
, da diese ajax-Anfrage kann dies passieren. Wenn Sie installiert haben, nodejs, Sie können installieren Sie einen server und Konsole sehen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich vor kurzem hatte das gleiche Problem. jQuery erschien die Handhabung der Daten und der Datentyp korrekt, aber stattdessen wurde es Firefox Rücksendung der syntax-Fehler, was auch erklärt, warum Ihr code ausgeführt wurde als gedacht, aber immer noch drucken eine Fehlermeldung auf der Konsole.
Wenn Sie einen Blick in die Entwickler-Konsole, sehen Sie, dass Firefox die Interpretation der plain-text-Daten als ein anderes format (wahrscheinlich XML). Firefox-Reifen, die zum analysieren der Daten als XML, kann aber nicht, weil es nicht gültig ist XML, was die Ergebnisse in der "Syntax-Fehler" wird auf der Konsole ausgegeben.
Festsetzung dieses problem für mich beteiligt Bearbeiten der server so kehrte der folgende header:
Content-Type: "text/plain"
Dieser erschien nur ein Problem mit Firefox, Chrome hast, tritt dieses Problem nicht auf. Es ist ein Firefox-bug hier, die scheint, zu berühren, auf dem Thema.
Quelle
Das problem existiert immer noch in der Firefox-70, zumindest bei der Anforderung einer Datei aus dem Dateisystem. Kein jquery benötigt, kann das Verhalten reproduziert werden mit einem einfachen
XMLHttpRequest
. Aufruf deroverrideMimeType
Methode vorsend
es gelöst für mich. Sieht nach einer sehr sauberen Lösung für mich. Beispiel: