Heim > Artikel > Web-Frontend > Warum erhalte ich einen CORS-Fehler, wenn meine Serverseite den Ursprung mit einem abschließenden Schrägstrich zulässt?
Cross-Origin Resource Sharing (CORS) ist ein Mechanismus, der Cross-Origin-Anfragen von Websites Dritter einschränkt, um sensible Daten zu schützen. Ein Ursprung wird durch eine Kombination aus Protokoll, Domäne und Port dargestellt.
Das Hauptproblem hierbei ist das Vorhandensein eines abschließenden Schrägstrichs im zulässigen Ursprung .
Webursprünge enthalten keine abschließenden Schrägstriche. Daher ist der folgende Ursprung ungültig:
<code class="text">https://googledocs-clone-sbayrak.netlify.app/</code>
Der korrekte Ursprung, ohne den abschließenden Schrägstrich, ist:
<code class="text">https://googledocs-clone-sbayrak.netlify.app</code>
In Socket .IO, Sie verwenden das Node.js-Cors-Paket für die CORS-Verarbeitung. Dieses Paket erfordert eine genaue Übereinstimmung zwischen dem Ursprung der Anfrage und dem in den CORS-Einstellungen konfigurierten Ursprungswert. Bei einem abschließenden Schrägstrich im Ursprung schlägt der Vergleich fehl und in der Antwort wird kein Access-Control-Allow-Origin-Header festgelegt.
Ihre server.js-Datei hat CORS-Middleware ist wie folgt konfiguriert:
<code class="javascript">const io = socketio(server, { cors: { origin: 'https://googledocs-clone-sbayrak.netlify.app/', methods: ['GET', 'POST'], }, });</code>
Entfernen Sie den abschließenden Schrägstrich aus dem Ursprungswert.
In Ihrem Frontend-Code wird die Die Socket-Verbindung wird an die folgende Adresse hergestellt:
<code class="javascript">const s = io('https://googledocs-clone-sbayrak.herokuapp.com/');</code>
Bei Verwendung des korrekten Ursprungswerts ohne den abschließenden Schrägstrich sollte der CORS-Fehler nicht mehr auftreten.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich einen CORS-Fehler, wenn meine Serverseite den Ursprung mit einem abschließenden Schrägstrich zulässt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!