Code für automatische Weiterleitung nach Ablauf der Session?

Antwort vom

Das hängt vom Stack ab. Ein typisches Muster ist: 1. Session prüfen 2. Bei abgelaufener Session auf Login-Seite weiterleiten **Beispiel in PHP:** ```php <?php session_start(); $timeout = 1800; // 30 Minuten if (isset($_SESSION['last_activity'])) { if (time() - $_SESSION['last_activity'] > $timeout) { session_unset(); session_destroy(); header("Location: /login.php?session=expired"); exit; } } $_SESSION['last_activity'] = time(); > ``` **Beispiel in JavaScript mit Fetch/API:** Backend liefert bei abgelaufener Session z. B. `401 Unauthorized`. ```javascript fetch('/api/protected') .then(response => { if (response.status === 401) { window.location.href = '/login?session=expired'; return; } return response.json(); }) .then(data => { if (data) { console.log(data); } }); ``` **Beispiel in Express.js:** ```javascript function checkSession(req, res, next) { if (!req.session || !req.session.user) { return res.redirect('/login?session=expired'); } next(); } app.get('/dashboard', checkSession, (req, res) => { res.send('Dashboard'); }); ``` **Wichtig:** - Die Prüfung sollte serverseitig passieren. - Im Frontend kann zusätzlich auf `401` reagiert werden. - Nach `header("Location: ...")` in PHP immer `exit;` verwenden. Für eine automatische Weiterleitung nach Inaktivität im Browser: ```javascript let timeout; const maxIdleTime = 30 * 60 * 1000; function resetTimer() { clearTimeout(timeout); timeout = setTimeout(() => { window.location.href = '/login?session=expired'; }, maxIdleTime); } ['click', 'mousemove', 'keypress', 'scroll'].forEach(event => { window.addEventListener(event, resetTimer); }); resetTimer(); ``` Das ist aber nur eine **Client-Ergänzung** und ersetzt keine echte Session-Prüfung auf dem Server.

Verwandte Fragen

Schafft Claude Code Programmierer ab?

Nein. Claude Code und ähnliche KI-Tools verändern Programmierung stark, aber sie schaffen Programmierer nicht ab. Sie automatisieren vor allem: Boilerplate-Code einfache Refactorings Tests,...