Der folgende Code für das Hochladen von Texturen funktionierte in angularjs 1.2.26, funktionierte jedoch nicht mehr, als ich meine Webanwendung auf 1.3.0 hochstufte.
HTML-Code
%Vor%fileModel-Richtlinie
%Vor%Upload-Funktion - In 1.2.26 würde die Auswahl von "multipart / form-data" als Content-Type nicht funktionieren. Aber mit "undefined" als Content-Type eckig würde eine Art Magie wirken, die es zum Laufen bringen würde.
%Vor%FEHLER:
%Vor%Weiß jemand, wie das in der neuen Version funktioniert?
AKTUALISIEREN
Ich habe das Problem etwas eingegrenzt. Es funktioniert nicht mit 1.3.0-rc.5, aber mit der vorherigen Version (rc.4) funktioniert es. Also versuche ich gerade herauszufinden, welche Änderungen zu meinem Problem führen. Hier ist das Changelog .
Das Problem lag im Antwortheader meiner Anforderung zum Hochladen von Texturen auf der Serverseite. Zum Erstellen meiner Anwendung habe ich Spring MVC verwendet und hatte eine Anforderungszuordnung, aber ohne die produces
Spezifikation:
Ohne Angabe von text/plain
als Inhaltstyp verwendet Spring automatisch application/json
als Inhaltstyp. Und dies verursacht, dass angular.js JSON.parse seit 1.3.0-rc.5 aufruft ( change ) . Mein Textur-Upload gibt eine URL zurück, die auf den Ort verweist, an dem das Bild geliefert wird. Da dies ein einfacher String ist, führte dies zu der beschriebenen Fehlermeldung. Vergessen Sie also nicht, in Ihren Serverantworten korrekte Inhaltstypen anzugeben: -)
Tags und Links angularjs file-upload