Heim > Web-Frontend > js-Tutorial > Warum erhalte ich einen XMLHttpRequest-Fehler: „Kein Header „Access-Control-Allow-Origin' vorhanden'?

Warum erhalte ich einen XMLHttpRequest-Fehler: „Kein Header „Access-Control-Allow-Origin' vorhanden'?

Mary-Kate Olsen
Freigeben: 2024-11-04 03:10:02
Original
456 Leute haben es durchsucht

Why Am I Getting an XMLHttpRequest Error: 'No 'Access-Control-Allow-Origin' Header Present?

XMLHttpRequest-Fehler: 'Kein 'Access-Control-Allow-Origin'-Header vorhanden

In diesem Projekt wird eine XML-Datei auf www Für die Währungsumrechnung wird auf .ecb.europa.eu verwiesen. Aufgrund der Same-Origin-Richtlinie ist jedoch ein Fehler aufgetreten.

Die Same-Origin-Richtlinie verbietet domänenübergreifende Anfragen. In diesem Fall befindet sich die HTML-Seite in einer anderen Domäne (z. B. run.jsbin.com) als die XML-Datei (ecb.europa.eu). Daher gilt die Anfrage als Cross-Origin Resource Sharing (CORS)-Anfrage.

CORS-Kommunikation

Um CORS zu aktivieren, antwortet der Server Die Anfrage muss bestimmte Header enthalten, einschließlich „Access-Control-Allow-Origin“.

  • Der Browser sendet die Anfrage mit einem „Origin“-Header, der die Domäne der HTML-Seite angibt.
  • Wenn der Server mit dem Header „Access-Control-Allow-Origin“ antwortet, der mit dem Ursprung übereinstimmt, wird die Anfrage zugelassen. Andernfalls wird die Anfrage blockiert.

Beheben des Fehlers

Um das Problem zu beheben, muss der XML-Dateiserver so konfiguriert werden, dass er den „Zugriff“ hinzufügt. Control-Allow-Origin‘-Header auf seine Antworten. Dieser Header kann auf denselben Ursprung (z. B. „Access-Control-Allow-Origin: http://run.jsbin.com“) oder auf „*“ gesetzt werden, um den Zugriff von jedem Ursprung aus zu ermöglichen.

Wenn Da eine serverseitige Konfiguration nicht möglich ist, kann ein Spiegel-Proxy verwendet werden, um die Anfrage abzufangen und die erforderlichen Header hinzuzufügen, bevor sie an den eigentlichen Server weitergeleitet wird.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich einen XMLHttpRequest-Fehler: „Kein Header „Access-Control-Allow-Origin' vorhanden'?. 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