NextAuth.js Abmelden nicht löscht die Sitzung über Browser -Registerkarten hinwegJavaScript

Javascript-Forum
Anonymous
 NextAuth.js Abmelden nicht löscht die Sitzung über Browser -Registerkarten hinweg

Post by Anonymous »

Ich verwende NextAuth.js für die Authentifizierung in meiner nächsten.js -Anwendung. Alles funktioniert gut, wenn Sie sich anmelden - wenn ich mich auf einer Registerkarte anmelde und das gleiche Projekt in einer anderen Registerkarte automatisch angemeldet habe, zeigt der Benutzer automatisch als angemeldete. /> < /li>
[*] Wenn ich die anderen Registerkarten nach dem Abmelden manuell aktualisiert habe, erscheinen sie immer noch protokolliert. Registerkarte


Verwendete Signout () von Next-Auth/React zum Abmeldung.

Code: Select all

const handleClose = async (type = '') => {
setAnchorEl(null);
if (type === 'logout') {
localStorage.setItem("nextauth_logout", Date.now().toString());
await signOut({ redirect: false });
}
};
< /code>
[list]
[*]  Ich habe einen benutzerdefinierten Hook erstellt, um Änderungen auf einer anderen Registerkarte zu lehen. Selbst dies wurde ausgelöst. Die Sitzung wird automatisch in der Registerkarte aktualisiert, die ich verwendet habe, und der Benutzer bleibt in sich selbst als angemeldet in sich < /p>
const useMultiTabLogout = () => {
useEffect(() => {
const handleStorageChange = (event) => {
if (event.key === "nextauth_logout" && event.newValue) {
signOut();
}
};

window.addEventListener("storage", handleStorageChange);
return () => window.removeEventListener("storage", handleStorageChange);
}, []);
};

[/list]

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post