2017-02-20 9 views
1

Dies ist mein erstes Mal versucht, XMLHttpRequest (um eine Datei auf eine Webseite gezogen zu laden) und ich kann es nicht tun, etwas zu tun. Ich habe folgenden Javascript-Code in meiner Web-Seite:XMLHTTPRequest :: send() Methode macht nichts

  function upload(file) 
      {    
      var formData = new FormData(); 
      formData.append("file", file); 

      var xhr = new XMLHttpRequest();     
      xhr.open("POST", "servlet/UploadServlet", false);            
      xhr.send(formData);    
      } 

Ich legte meine Servlet-Klasse UploadServlet und meine Web-Seite innerhalb der „Beispiele“ Verzeichnisstruktur meines Tomcat-Servers. Aber während ich das HelloWordServlet Beispiel über einen Link auf meiner Seite ausführen kann, bin ich nicht in der Lage, die XmlHttpRequest.send() zu tun, irgendetwas zu tun. Aber ich konnte überprüfen, dass der Javascript-Code vor dieser Zeile funktioniert, d. H. Die an die Routine übergebene Datei wurde erfolgreich an das FormData-Objekt angehängt. Ein Blick in die Server-Logs hat nichts ergeben, und es gab auch nichts, wenn ich das Konsolenprotokoll erwähnte. Was mache ich falsch?

+1

hinzugefügt haben Sie überhaupt etwas zu im Browser-Entwickler-Tools-Konsole erhalten das schlägt Versagen vor? Wie wäre es mit dem Browser-Entwickler-Tools-Netzwerk-Tab? irgendein Hinweis darauf, dass die Anfrage stattfindet? P.S. Senden einer Datei synchron ist ein * Very Bad Idea ™ * - versuchen Sie, die Anfrage asynchron zu ändern (entfernen Sie die falsche, oder ändern Sie es in wahr) - sehen, ob das hilft. Und welchen Browser benutzen Sie? Es ist ungewöhnlich, in der Konsole absolut nichts über diese Anfrage zu haben. –

+0

Ich habe auf keiner der Registerkarten, die Sie erwähnen, Meldungen angezeigt, die für das XHR-Senden relevant zu sein scheinen, und die Änderung der asynchronen Anforderung machte keinen Unterschied . Ich benutze Firefox. –

Antwort

0

Wie sich herausstellte, war das Problem nicht mit XmlHttpRequest, aber mit dem Servlet selbst: Ich hatte es nicht zu den entsprechenden Zuordnungen in web.xml