Heim >Web-Frontend >js-Tutorial >Warum schlägt meine Localhost-CORS-Anfrage trotz korrekter Server-Header fehl?

Warum schlägt meine Localhost-CORS-Anfrage trotz korrekter Server-Header fehl?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-16 11:31:11870Durchsuche

Why Does My Localhost CORS Request Fail to stackoverflow.com Despite Correct Server Headers?

Problem mit dem CORS-Header von Localhost

Obwohl der Server mit den entsprechenden CORS-Headern konfiguriert wurde, stößt ein Benutzer auf Schwierigkeiten, localhost als Ursprung in seinem Client-Skript zu verwenden .

Serverkonfiguration

Der Server wird mit dem folgenden Header eingerichtet:

Access-Control-Allow-Origin:http://localhost

Client-Skript

Das Client-Skript verwendet das XMLHttpRequest-Objekt, um eine Anfrage an zu stellen 'http://stackoverflow.com/'.

var xhr = new XMLHttpRequest();
xhr.onload = function() {
   console.log('xhr loaded');
};
xhr.open('GET', 'http://stackoverflow.com/');
xhr.send();

Fehler

Die Anfrage schlägt jedoch mit dem folgenden Fehler fehl:

XMLHttpRequest cannot load http://stackoverflow.com/. Origin http://localhost is not allowed by Access-Control-Allow-Origin.

Lösung

Während die Serverkonfiguration korrekt erscheint, liegt das Problem in der Verwendung von 'localhost' als Ursprung im Client-Skript.

Chrome unterstützt localhost nicht für CORS-Anfragen aufgrund eines Fehlers, der 2014 als „WontFix“ markiert wurde.

Problemumgehung

Um dieses Problem zu vermeiden, verwenden Sie eine Domäne, die in 127.0.0.1 aufgelöst wird, z 'localho.st' oder starten Sie Chrome zu Testzwecken mit dem Flag '--disable-web-security'.

Das obige ist der detaillierte Inhalt vonWarum schlägt meine Localhost-CORS-Anfrage trotz korrekter Server-Header fehl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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