Heim > Web-Frontend > js-Tutorial > CORS-Fehler: Warum lehnt mein Server „Content-Type' in der Preflight-Anfrage ab?

CORS-Fehler: Warum lehnt mein Server „Content-Type' in der Preflight-Anfrage ab?

Patricia Arquette
Freigeben: 2024-10-28 14:21:02
Original
523 Leute haben es durchsucht

CORS Error: Why Does My Server Reject

CORS-Fehler: Zulässige Header ändern

Beim Versuch, eine POST-Anfrage mit Datei-Uploads durchzuführen, stößt der Browser häufig auf den Fehler: „Anfrage Headerfeld Content-Type ist von Access-Control-Allow-Headers nicht zulässig.“

Ursache:

Dieser Fehler tritt auf, weil Browser Anfragen für Cross-Origin vorab prüfen Anfragen mit nicht standardmäßigen Inhaltstypen wie „multipart/form-data“ durch Senden einer OPTIONS-Anfrage. Die OPTIONS-Anfrage prüft, ob der Server bestimmte Anforderungsheader zulässt, die nicht im Standard-HTTP-Satz enthalten sind.

Erster Lösungsversuch:

Um dieses Problem zu beheben, hat der Entwickler Zunächst wurde versucht, der POST-Anfrage die folgenden Header hinzuzufügen:

"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "GET,POST,PUT,DELETE,OPTIONS",
"Access-Control-Allow-Headers": "Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With"
Nach dem Login kopieren

Folgender Fehler:

Dies führte jedoch zu einem neuen Fehler: „Request header field Access- Control-Allow-Origin ist durch Access-Control-Allow-Header nicht zulässig. Type“-Header in der Konfiguration „Access-Control-Allow-Headers“. Browser senden eine Preflight-OPTIONS-Anfrage mit dem „Content-Type“-Header, und wenn der Server dies nicht zulässt, schlägt die CORS-Anfrage fehl.

Um diesen Fehler zu beheben, sollte der Entwickler entweder Angulars Standard-„Anwendung“ überschreiben /json“-Inhaltstyp oder erlauben Sie „Content-Type“ in der Access-Control-Allow-Headers-Konfiguration des Servers.

Angular-Codebeispiel:

Zum Überschreiben der Standardeinstellung Header in Angular kann der folgende Code verwendet werden:

Das obige ist der detaillierte Inhalt vonCORS-Fehler: Warum lehnt mein Server „Content-Type' in der Preflight-Anfrage ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage