Ich verwende Chrome 53.0.2785.116 m (64-Bit).
Ich habe die folgenden Header auf Devtools. Das Problem ist mit einem "//" Kommentar markiert. content type erlaubt uns wirklich nicht, es auf application / json zu setzen, ich habe 100 verschiedene Wege ausprobiert.
%Vor%Anfrage Kopfzeilen
%Vor%Das Problem ist, dass wenn Sie im Modus "Nein" arbeiten, die Header unwandelbar werden und Sie einige ihrer Einträge nicht ändern können. Einer der Köpfe, die du nicht ändern kannst, ist der Inhaltstyp. Wenn Sie "mode" auf "no-cors" setzen, können Sie nur diese Header ändern:
Accept
Accept-Language
Content-Language
Content-Type
und dessen Wert nach der Analyse einen MIME-Typ (Parameter ignorieren) hat, der application/x-www-form-urlencoded
, multipart/form-data
oder text/plain
ist
Mit anderen Worten, in 'mode' '-no-'cors' können Sie application/x-www-form-urlencoded
, multipart/form-data
oder text/plain
nur auf Content-Type
setzen.
Die Lösung besteht also darin, fetch nicht mehr zu verwenden oder in den 'cors' Modus zu ändern. Dies funktioniert natürlich nur dann, wenn Ihr Server auch Anfragen akzeptiert.
Hier ist ein Beispiel, wie Sie CORS in einem Apache Server aktivieren können
%Vor%Der obige Code fügt die CORS-Header in die Antwort ein, wenn es notwendig ist. Mit diesem Code erlaubt Ihr Server CORS nur von den Domänen "url1.com" oder "url2.com".
Hier sind einige Referenzen
Die Option mode:"no-cors"
scheint das Problem zu sein. Entfernen Sie diese Option, und Content-Type
sollte auf "application/json"
Tags und Links javascript google-chrome ecmascript-6