Mein Backend erfordert, dass der Anforderungsheader "Content-Type" genau "application/json" lautet. Dies ist eine CORS-Anfrage und in Chrome funktioniert alles einwandfrei. Die genauen Header, von Entwickler-Tool Netzwerk-Registerkarte Quelle:Probleme beim Ändern von Anforderungsheadern in Firefox mit AngularJS
Content-Type: application/json
Ich habe dies in AngularJS mit $ http.default.headers.post und es funktioniert gut in Chrome. Es funktioniert jedoch nicht in Firefox. Firefox sendet diese stattdessen:
Content-Type: application/json; charset=UTF-8
Ich versuchte Header zu ändern:
- Einstellungen $ http.default.headers (für .post, .common)
- Einstellung benutzerdefinierte Header für eine Anfrage
- ein $ http Interceptor
Alle diese Methoden funktionieren gut in Chrome, aber nicht in Firefox. Die Anfrage enthält Daten.
Wenn ich den 'Content-Type' Header alle zusammen zu entfernen, ist es immer noch geschickt, aber dann ist es:
Content-Type: text/plain; charset=UTF-8
(dies geschieht sowohl in Chrome und Firefox).
Das führt mich zu der Annahme, dass der Browser den Header erzwingt :) Wie kann ich das in Firefox umgehen?
Ankommende dumme Frage von mir: Can‘ t Sie nur Ihr Backend akzeptieren, was ist eine vollkommen normale HTTP-Header? Sie wissen nie wann/wenn Chrome plötzlich entscheidet, es auch zu erzwingen. – ivarni
das Backend ist nicht wirklich mein - ich verwende LimeSurvey RemoteControl API, die ein bisschen zu empfindlich ist. Ich kann die Anfrage im Webserver transformieren - was ich gerade gemacht habe, welche Art von Problem löst das Problem, aber nicht die Frage. – wiherek
Ja, ich habe das als Kommentar und nicht als Antwort aus genau diesem Grund hinterlassen. – ivarni