Alle Tools

CORS tester

Nennen Sie die URL, die Sie aufrufen, und den Origin, von dem aus. Wir stellen die Anfrage von unserem Server und sagen Ihnen, welcher Access-Control-Header fehlt oder falsch ist.

Die Anfrage, die Sie stellen wollen

Die vollständige URL, an die die Anfrage geht, samt Pfad.
Schema und Host, unter dem Ihre Seite ausgeliefert wird, ohne Pfad.
Durch Kommas getrennt, und leer lassen, wenn die Anfrage keine eigenen Header sendet. content-type zählt hier als eigener Header, denn ob ein Browser dafür einen Preflight schickt, hängt vom gesendeten Wert ab. Gewöhnliche wie accept fragen wir nicht ab, weil ein Browser das auch nicht tut.

Dieses Tool läuft auf unseren Servern. Wir stellen die Anfrage von einer öffentlichen Adresse aus und zeigen Ihnen die zurückgekommenen Header. Ihre Cookies und einen Body senden wir dabei nie mit.

Was CORS ist und was ein Preflight ist

Ein Browser lässt einen Origin die Antwort eines anderen nur lesen, wenn der zweite es erlaubt. Er erlaubt es mit Access-Control-Allow-Origin in der Antwort. Bei allem jenseits eines schlichten GET oder POST mit gewöhnlichen Headern fragt der Browser vorher mit einer OPTIONS-Anfrage nach, dem Preflight, und sendet die eigentliche Anfrage nur, wenn die Antwort Methode und Header zulässt.

Wie das Urteil zu lesen ist

Jede Zeile steht für einen Header, den der Browser prüft, mit dem zurückgegebenen Wert daneben. Eine als fehlgeschlagen markierte Zeile ist ein Grund für die Blockade, und der Hinweis oben nennt den ersten davon, weil der zuerst behoben gehört. Als Hinweis markierte Zeilen ändern für sich genommen nichts. Darunter stehen die gesendete Anfrage und die zurückgekommenen Header, damit Sie den ganzen Austausch an die Serverbetreiber weitergeben können.

Welcher Header welchen Fehler behebt

Access-Control-Allow-Origin kommt zuerst und muss Ihren Origin exakt nennen, samt Schema und Port, oder ein Sternchen sein. Access-Control-Allow-Methods und Access-Control-Allow-Headers zählen nur beim Preflight, und beide müssen genau das aufführen, wonach der Browser gefragt hat. Access-Control-Allow-Credentials muss die Zeichenfolge true sein, bevor Cookies mitgehen, und verträgt sich nicht mit einem Sternchen als Origin. Access-Control-Expose-Headers ist das, was JavaScript über die wenigen Standardheader hinaus lesen lässt.

Nicht mehr raten, welchen Header der Server nicht gesendet hat

Eine blockierte Anfrage sieht von außen immer gleich aus, ganz gleich woran es lag. Session Replay zeichnet Anfrage, Antwortheader und Konsolenzeile gemeinsam auf, damit der Nächste sofort alles vor sich hat.