CORS-Fehler

Cross-Origin Resource Sharing (CORS) ist ein Standard, der es einem Server ermöglicht, die Same-Origin-Policy zu lockern. Dies wird verwendet, um einige Cross-Origin-Anfragen explizit zuzulassen, während andere abgelehnt werden. Wenn eine Website beispielsweise einen einbettbaren Dienst anbietet, kann es erforderlich sein, bestimmte Einschränkungen zu lockern. Eine solche CORS-Konfiguration einzurichten, ist nicht unbedingt einfach und kann einige Herausforderungen mit sich bringen. Auf diesen Seiten werden wir einige häufige CORS-Fehlermeldungen betrachten und wie man sie beheben kann.

Wenn die CORS-Konfiguration nicht korrekt eingerichtet ist, wird die Browser-Konsole einen Fehler wie "Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at [some site]" anzeigen, der darauf hinweist, dass die Anfrage aufgrund eines Verstoßes gegen die CORS-Sicherheitsregeln blockiert wurde. Dies muss jedoch nicht unbedingt ein Einrichtungsfehler sein. Es ist möglich, dass die Anfrage tatsächlich absichtlich durch die Webanwendung des Nutzers und den externen Dienst verweigert wird. Soll der Endpunkt jedoch zugänglich sein, ist eine Fehlerbehebung erforderlich, um erfolgreich zu sein.

Identifizierung eines CORS-Problems

Um das zugrunde liegende Problem mit der CORS-Konfiguration zu verstehen, müssen Sie herausfinden, welche Anfrage fehlerhaft ist und warum. Diese Schritte können Ihnen dabei helfen:

  1. Navigieren Sie zur betreffenden Website oder Web-App und öffnen Sie die Entwicklerwerkzeuge.
  2. Versuchen Sie nun, die fehlerhafte Transaktion nachzuvollziehen, und überprüfen Sie die Konsole, ob eine CORS-Verletzungs-Fehlermeldung angezeigt wird. Es wird wahrscheinlich so aussehen:

Firefox-Konsole zeigt CORS-Fehler

Der Text der Fehlermeldung wird in etwa so sein:

Cross-Origin Request Blocked: The Same Origin Policy disallows
reading the remote resource at https://some-url-here. (Reason:
additional information here).

Hinweis: Aus Sicherheitsgründen sind Einzelheiten darüber, was bei einer CORS-Anfrage schiefgelaufen ist, für JavaScript-Code nicht verfügbar. Der Code weiß nur, dass ein Fehler aufgetreten ist. Der einzige Weg, um festzustellen, was genau schiefgelaufen ist, besteht darin, die Konsole des Browsers nach Details zu durchsuchen.

CORS-Fehlermeldungen

Siehe auch