„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie lege ich während einer Weiterleitung Cookies oder Header für eine andere Domain fest?

Wie lege ich während einer Weiterleitung Cookies oder Header für eine andere Domain fest?

Veröffentlicht am 01.11.2024
Durchsuche:977

How to Set Cookies or Headers for a Different Domain During a Redirect?

Wie leite ich von einer Domain zu einer anderen um und setze Cookies oder Header für die andere Domain?

HTTP-Weiterleitungen erlauben das Setzen benutzerdefinierter Header oder Cookies für das Ziel nicht Domain. Darüber hinaus verhindern Browser das Setzen von Cookies für eine andere Domain als die, die mit dem Set-Cookie-Header antwortet.

Lösung 1: Mit Abfrageparameter umleiten und dann Cookie festlegen

  1. Weiterleiten von Domäne A zu Domäne B mit einem Zugriffstoken, das als Abfrageparameter übergeben wird.
  2. Domäne B empfängt die Anfrage und setzt mithilfe des Tokens ihr eigenes Cookie.

Lösung 2: Cross-Origin Kommunikation mit Window.postMessage()

  1. Fügen Sie einen versteckten Iframe zu Domäne A hinzu, der auf Domäne B zeigt.
  2. Senden Sie das Zugriffstoken an Domäne B mit Window.postMessage().
  3. Domäne B speichert das Token in localStorage oder setzt ein Cookie mit JS.
  4. Melden Sie Domäne A, dass das Token gespeichert wurde, und leiten Sie den Benutzer zu Domäne B weiter.

Lösung 3: Serverseitiger Token-Austausch

  1. Verwenden Sie ein Wie lege ich während einer Weiterleitung Cookies oder Header für eine andere Domain fest?-Tag in Domäne A, um auf Domäne B mit einem Zugriffstoken als Abfrageparameter zu verweisen.
  2. Domäne B antwortet mit Set-Cookie-Header beim Empfang der Anfrage.
  3. Verwenden Sie fetch oder XMLHttpRequest (mit aktivierten Anmeldeinformationen und CORS), um das Token direkt an Domäne B zu senden.
  4. Domäne B setzt das Cookie beim Empfang des Zugriffs Token.

Wichtige Hinweise:

  • Alle Cookies zulassen muss in den Browsereinstellungen aktiviert sein, damit die Lösungen 2 und 3 funktionieren.
  • Use SameSite=None; Sichere Flags in Cookies für Lösung 3.
  • Die Abfragezeichenfolge in Lösung 1 legt das Zugriffstoken offen und birgt Sicherheitsrisiken.
  • Lösung 3 erfordert die Aktivierung von CORS auf der Zieldomäne und eine explizite Ursprungsangabe auf der serverseitig.
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3