„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 > Ihre Sitzung ist abgelaufen!!

Ihre Sitzung ist abgelaufen!!

Veröffentlicht am 08.11.2024
Durchsuche:531

Your Session has Expired !!

Nun, heute sprechen wir über das Konzept des „Sitzungsablaufs“, insbesondere wenn Sie NextAuth.js in Ihrem Projekt verwenden. Verstehen Sie in einfacher und freundlicher Sprache, damit keine Verwirrung entsteht. ,

Lassen Sie uns zunächst die Bedeutung des Fehlers „Ihre Sitzung ist abgelaufen“ verstehen. Dies ist ein

Authentifizierungsfehler, der auftritt, wenn die Anmeldesitzung des Benutzers beendet wird. Sie haben sich beispielsweise bei einer Website oder App angemeldet, diese eine Weile genutzt und sie dann für eine Weile verlassen. Als ich zurückkam, erschien auf dem Bildschirm die Meldung „Sitzung abgelaufen, bitte melden Sie sich erneut an.“ Das heißt, die Berechtigung, die Ihnen zuvor Zugriff auf die App gewährt hat, ist abgelaufen und Sie müssen sich erneut anmelden, um erneut authentifiziert zu werden. , , , Ein Beispiel zum Verständnis: , Stellen Sie sich vor, Sie betreten ein Einkaufszentrum und der Sicherheitsbeamte gibt Ihnen eine

Besucherkarte
für den Zutritt. Sobald Ihre Besucherkarte gültig ist, können Sie durch das Einkaufszentrum schlendern, einkaufen und Filme schauen. Wenn die Besucherkarte jedoch nur eine Stunde lang gültig ist und Sie die Zeitspanne überschreiten, müssen Sie erneut aussteigen oder die Erlaubnis des Sicherheitsdienstes einholen. Genauso ist die Sitzung auch eine

vorübergehende Erlaubnis

, die ablaufen kann.

, , Wie funktioniert NextAuth mein Session? , Wenn wir nun NextAuth.js implementieren, gibt es auch dort einige Regeln. Wenn sich ein Benutzer anmeldet, verfolgt NextAuth die Identität des Benutzers mithilfe von JWT (JSON Web Tokens)

oder
Sitzungscookies

. , , ,

JWT

ist ein Token, das die Anmeldeinformationen des Benutzers verschlüsselt und mit jeder Anfrage gesendet wird, um zu überprüfen, ob der Benutzer gültig ist oder nicht. , Sitzungscookies werden im Browser gespeichert, wodurch das Backend weiß, welcher Benutzer gerade angemeldet ist. , Aber sie haben eine Ablaufzeit

, die Sie über die
    Konfiguration
  • festlegen. Wie: , export const authOptions = { Sitzung: { Strategie: „jwt“, // JWT oder sitzungsbasierter Ansatz maxAge: 30 * 60, // Sitzungszeitlimit von 30 Minuten , // Andere Authentifizierungsanbieter werden hier erwähnt , ,
  • Hier bedeutet maxAge, dass die Sitzung nur 30 Minuten lang aktiv bleibt. Wenn der Benutzer nach 30 Minuten eine Aktion ausführt (z. B. eine Seitenaktualisierung oder eine Anfrage), läuft die Sitzung ab und der Benutzer muss sich erneut anmelden.
  • , , Methode zur Vermeidung des Sitzungsablaufs , , , Stille Aktualisierung: Sie können ein
  • Aktualisierungstoken
implementieren, das die Sitzung im Hintergrund stillschweigend aktualisiert, sodass sich der Benutzer nicht jedes Mal manuell anmelden muss.

, Beispielsweise können Sie in NextAuth eine Sitzungsabfrage durchführen, sodass die Sitzung automatisch aktualisiert wird: ,
useSession({ erforderlich: wahr, onUnauthenticated() { anmelden(); // Zur Anmeldeseite umleiten, wenn die Sitzung abläuft , , , ,

export const authOptions = {
  session: {
    strategy: "jwt", // JWT ya session-based approach
    maxAge: 30 * 60, // 30 minutes ka session timeout
  },
  // baaki authentication providers yahan mention karte hain
}
Angemeldet bleiben

: Einige Apps bieten dem Benutzer die Option „Angemeldet bleiben“, wodurch die Ablaufzeit der Sitzung verlängert wird. Dies kann mithilfe der

Token-Rotation
erfolgen, wobei bei jeder Anfrage ein neues Token abgerufen wird.

  1. Automatischer Abmeldemechanismus: In einigen Fällen lassen Apps aus Sicherheitsgründen die Sitzung absichtlich vorzeitig ablaufen. Wie bei Banking-Apps werden Sie feststellen, dass die Sitzung abgemeldet wird, wenn Sie längere Zeit inaktiv sind. Sie können dies auch zu Ihrer NextAuth-Konfiguration hinzufügen, wenn Sie eine hohe Sicherheit aufrechterhalten möchten.
, , , Reales Szenario in Apps: ,

Stellen Sie sich vor, Sie befinden sich in einer E-Commerce-App und haben einige Käsesorten in Ihren Warenkorb gelegt. Wenn die Sitzung abläuft, melden Sie sich erneut an, die Artikel im Warenkorb bleiben jedoch unverändert. Dies ist möglich, weil die Warenkorbdaten möglicherweise im
lokalen Speicher

gespeichert wurden. Aber einige sensible Apps wie E-Mail- oder Banking-Apps müssen die Abmeldung erzwingen
   useSession({
     required: true,
     onUnauthenticated() {
       signIn(); // Redirect to login page agar session expire ho jaaye
     },
   });
,
    Also Freunde, das ist die vollständige Grundlage für den Sitzungsablauf und wie NextAuth.js damit in Ihrem Projekt umgeht. Dieses Konzept mag zunächst verwirrend erscheinen, doch wenn man es in der Praxis umsetzt, wird nach und nach alles klar. Wenn Sie Zweifel haben und Einzelheiten zu einem bestimmten Teil wissen möchten, fragen Sie einfach nach! , , ,
Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/shanu001x/your-session-has-expired--3ko3?1 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
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