Der Authentifizierungsfluss ist der Prozess der Bestätigung der Identität eines Benutzers und der Verwaltung seines Zugriffs auf bestimmte Teile einer Anwendung. Wenn Sie mit einer Web-App (z. B. einer Social-Media-Site) arbeiten, müssen Sie überprüfen, ob der Benutzer der ist, für den er sich ausgibt (Anmelden), und ihm dann Zugriff auf bestimmte Funktionen gewähren.
Wenn Sie in React die Benutzerauthentifizierung durchführen möchten, interagieren Sie normalerweise mit einem Backend-Server, der die schwere Arbeit übernimmt. So funktioniert es normalerweise:
Nach einer erfolgreichen Anmeldung sendet der Server zwei wichtige Token zurück:
Zugriffstoken:
Aktualisierungstoken:
Sobald sich der Benutzer anmeldet und diese Token erhält, muss die App sie irgendwo auf dem Gerät des Benutzers speichern. Hier kommt localStorage ins Spiel:
Jedes Mal, wenn der Benutzer etwas tut, das eine Serverinteraktion erfordert (wie das Posten eines Status oder das Anzeigen seiner Nachrichten), sendet die App eine Anfrage an den Server mit dem im Autorisierungsheader angehängten Zugriffstoken. Dadurch wird dem Server mitgeteilt, dass der Benutzer angemeldet ist und die Aktion ausführen darf.
Ablauf des Zugriffstokens: Wenn der Server mit einem 401-Fehler antwortet, bedeutet dies, dass das Zugriffstoken abgelaufen ist. Die App verwendet dann das Aktualisierungstoken, um ein neues Zugriffstoken anzufordern.
Refresh Token Expiration: Wenn auch das Refresh Token abgelaufen ist (was nach längerer Zeit passieren kann), antwortet der Server erneut mit einem 401-Fehler. Zu diesem Zeitpunkt leitet die App den Benutzer zur Anmeldeseite weiter und fordert ihn auf, sich erneut anzumelden, um neue Token zu erhalten.
Sobald die App mithilfe des Aktualisierungstokens ein neues Zugriffstoken erhält, sendet sie die ursprüngliche Anfrage erneut, die aufgrund des abgelaufenen Tokens fehlgeschlagen ist. Auf diese Weise erfährt der Benutzer keine Unterbrechung.
Dieser Ablauf stellt sicher, dass der Benutzer angemeldet bleiben und die App sicher nutzen kann, ohne seine Anmeldeinformationen ständig neu eingeben zu müssen.
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