Grund: CORS header 'AccessGrund: CORS-Kopfzeile 'Access-Control-Allow-Origin' fehlt

Grund

 Grund: CORS-Kopfzeile 'Access-Control-Allow-Origin' fehlt

Was ist schief gelaufen?

Der Antwort auf die CORS-Anfrage fehlt der benötigte Access-Control-Allow-Origin-Header, welcher verwendet wird, um herauszufinden, ob die Ressource vom Inhalt, der im momentanen Origin arbeitet, verwendet werden kann oder nicht.

Wenn der Server unter Ihrer Kontrolle steht, f√ľgen Sie die Quelle der anfragenden Seite zu der Liste der Domains hinzu, die Zugriff haben, indem Sie Sie zum Header-Wert Access-Control-Allow-Origin erg√§nzen.

Um zum Beispiel einer Seite unter https://amazing.site zu erlauben, auf die Ressource mithilfe von CORS zuzugreifen, sollte der Header lauten:

Access-Control-Allow-Origin: https://amazing.site

Mithilfe der "*"-Wildcard kann man eine Seite so konfigureren, dass Sie jeder anderen Webseite Zugriff gew√§hrt. Dies sollte man ausschlie√ülich f√ľr √∂ffentliche APIs tun. Private APIs sollten niemals "*" verwenden, sondern stattdessen eine spezifische Domain oder eine Liste von Domains. Zudem funktioniert die Wildcard nur f√ľr Requests, die mit dem crossorigin-Attribut, gesetzt auf "anonymous", erstellt wurden.

Access-Control-Allow-Origin: *

Warnung: Die Wildcard dazu zu benutzen, um allen Websites Zugriff auf eine private API zu geben, ist - aus wohl offensichtlichen Gr√ľnden - keine gute Idee.

F√ľgen Sie z.B. in Apache eine Zeile wie die Folgende zur Konfiguration des Servers hinzu (im zugeh√∂rigen <Directory>, <Location>, <Files>, oder <VirtualHost>-Abschnitt). Die Konfigurationseinstellungen findet man √ľblicherweise in einer .conf-Datei (httpd.conf und apache.conf sind √ľbliche Namen daf√ľr), oder in einer .htaccess-Datei.

Header set Access-Control-Allow-Origin 'origin-list'

F√ľr Nginx lautet der Befehl, um den Header zu setzen:

add_header 'Access-Control-Allow-Origin' 'origin-list'

Siehe auch