Heim > Web-Frontend > js-Tutorial > Wie kann ich CORS-Fehler „Kein ‚Access-Control-Allow-Origin'-Header' beheben?

Wie kann ich CORS-Fehler „Kein ‚Access-Control-Allow-Origin'-Header' beheben?

Mary-Kate Olsen
Freigeben: 2024-12-22 16:43:10
Original
800 Leute haben es durchsucht

How Can I Resolve

"Kein 'Access-Control-Allow-Origin'-Header in der API-Antwort vorhanden"

CORS-Proxy für die Lösung von Header-Problemen

Wenn Sie keine Kontrolle über den Server haben, können Sie den Header-Mangel durch den Einsatz eines CORS-Proxys umgehen. Eine einfach bereitzustellende Option ist cors-anywhere (https://github.com/Rob--W/cors-anywhere), die mit wenigen Befehlen eingerichtet werden kann. Dieser Proxy fügt Antworten den erforderlichen Access-Control-Allow-Origin-Header hinzu.

CORS-Preflight vermeiden

Der betreffende Code löst aufgrund des Authorization-Headers einen CORS-Preflight aus . Darüber hinaus kann Content-Type: application/json auch einen Preflight provozieren. Um dies zu vermeiden, muss der Server so geändert werden, dass er angemessen auf die Preflight-OPTIONS-Anfrage mit den erforderlichen Headern reagiert. Alternativ kann in Betracht gezogen werden, die Anfrage so zu gestalten, dass diese Auslöser vermieden werden (z. B. Verwendung unterschiedlicher Header oder eingebetteter JSON).

Problem mit „Wildcard“ Access-Control-Allow-Origin

Bei Antworten mit Anmeldeinformationen darf der Wert des Access-Control-Allow-Origin-Headers nicht „*“ sein. Es muss genau mit dem Ursprung des Frontend-Codes übereinstimmen, z. B. „http://127.0.0.1:3000“. Die Serverkonfiguration kann angepasst werden, um den Ursprungswert automatisch im Header widerzuspiegeln.

Unnötige Anforderungsheader entfernen

Entfernen Sie diese Zeilen aus dem JavaScript-Code, da sie Antwortheader darstellen und sollte nicht in Anfragen enthalten sein:

headers.append('Access-Control-Allow-Origin', 'http://localhost:3000');
headers.append('Access-Control-Allow-Credentials', 'true');
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich CORS-Fehler „Kein ‚Access-Control-Allow-Origin'-Header' beheben?. 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