Was wollen Browser für den Content-Type-Header auf JSON-AJAX-Antworten?

8

Ich gebe ein json zurück, das von javascript als Antwort auf eine XMLHTTPRequest behandelt werden muss.

Wenn ich den Inhaltstyp der Antwort auf "text / plain" festlege, akzeptieren alle Browser außer Chrome das Problem und leiten es ohne Probleme an meine JS weiter. Chrome wird die Antwort jedoch in

umbrechen %Vor%

, bevor Sie es an mein Javascript weiterleiten.

Wenn ich den Inhaltstyp der Antwort auf die "richtige" "application / json" setze, akzeptieren alle Browser, aber Firefox es und gibt es ohne Probleme an meine JS weiter. Firefox wird jedoch darum bitten, die Antwort als Datei zu speichern oder zu öffnen.

Was ist der korrekte, browserübergreifende Content-Type?

    
Bruce Goodwin 08.06.2010, 23:32
quelle

2 Antworten

7

Sie können das Problem lösen, indem Sie die Antwort in das JSON-Objekt unter Verwendung von jQuery funcion parseJSON - Ссылка

Der Parameter, den Sie an die Funktion übergeben, ist die JSON-Objektfolge, die Sie aus den Antwortdaten extrahieren:

%Vor%

Getestet (neben Chrome welches Problem das löst) in FF und IE8 für das folgende einfache JSON-Ergebnis, für andere Browser und komplexere Antworten keine Garantie ...

HINWEIS: Der Inhaltstyp in diesem Fall ist text / plain oder text / html Ich denke - ich habe die folgende ASP.Net MVC-Funktion verwendet, um das Ergebnis zurückzugeben

%Vor%

Wo ich das JSON-Objekt wie

zurückgegeben habe %Vor%     
zappan 30.09.2010 15:33
quelle
0

Ich verwende Ersatz im Ergebnis wie folgt:

%Vor%

Beachten Sie Folgendes:

inputTextSelector ist ein Textfeld zum Speichern des Namens der hochgeladenen Datei

viewImgSelector ist die ID eines img -Tags zur Vorschau des hochgeladenen Bildes.

    
user3600935 17.04.2016 11:23
quelle