Wie eine Sitzung ungültig werden, wenn ich auf neue Registerkarte für die gleiche Anwendung (für die gleiche URL) klicken? Sobald ich auf dieselbe URL zugreife, hat sich die bestehende Sitzung geöffnet. Ich möchte verschiedene Sitzung starten fürInvalidieren Sie die Java-Sitzung für neue Registerkarte
Antwort
Session ID wird in einem Cookie gespeichert, so dass Sie nicht zwei verschiedene Sitzungen für die gleiche Anwendung in einem Browser (eine neue Registerkarte oder ein neues Fenster - spielt keine Rolle) zur gleichen Zeit .
Wenn Sie einfache Servlet verwenden Sie folgenden Code verwenden können,
// Get the existing session.
HttpSession session = request.getSession(false);
// Invalidate the existing session.
if(session!=null) {
session.invalidate();
}
Sie können diese Servlet aufrufen, indem Sie Zuordnung für die neue Registerkarte URL in web.xml zu tun.
Ihre Serversitzung wird mit der HTTP-Sitzung zugeordnet. Sie können nicht zwei HTTP-Sitzungen gleichzeitig im selben Browser haben ... Und wie würden Sie feststellen, dass die Schaltfläche In neuem Tab öffnen gedrückt hat und er den Link nicht in derselben Registerkarte geöffnet hat? Sie sollten einen AJAX-Ping dafür haben (ziemlich knifflig ...)
Wenn es um die Session/Cookie geht, unterstützen Browser derzeit keine separaten Cookies für jede unterschiedliche Registerkarte/Fenster.
Aber einige Frameworks haben dieses Konzept von Window, so dass Sie benachrichtigt werden können, wenn ein neues Fenster/Tab geöffnet wird. Sobald Sie es erkennen können, können Sie die alten Fenster zerstören. Das Aktualisieren der Sitzung (oder das Ungültigmachen und Erstellen einer neuen Sitzung) wird auf der anderen Registerkarte nicht den gewünschten Effekt haben (auch wenn Sie dies tun können), da sich diese ganze Sache wiederholen kann, wenn der Benutzer auf die andere alte Registerkarte wechselt.
Ihre beste Wette ist es, mehrere Fenster für den Benutzer in einer einzigen Sitzung zu halten.
Verwenden Sie URL-Umschreiben für verschiedene Sitzungen in verschiedenen Registerkarten/Fenstern. Wenn Sie die Sitzung ungültig machen möchten, entfernen Sie einfach alle vorherigen Sitzungen für diesen Benutzer. Das einzige Problem wäre, wenn jemand die URL kopiert und eingefügt hätte. Wenn dies ein Problem sein könnte, dann prüfen Sie, ob der Sitzungsschlüssel irgendwie im HTML5-Speicher gespeichert ist.
- 1. Öffnen Sie neue Registerkarte in Jquery
- 2. Öffnen Sie Google-Links in neue Registerkarte
- 3. Javascript Uhr auf neue Registerkarte
- 4. Öffnen Sie eine neue Registerkarte/Fenster und schreiben Sie etwas?
- 5. Chrome neue Registerkarte enthält Speicher
- 6. Was ist die neue Größe der fb Registerkarte?
- 7. Öffnen Sie eine neue Registerkarte mit Javascript, aber bleiben Sie auf der aktuellen Registerkarte mit Javascript
- 8. Chrome Extension - Berechtigungen für Code auf neue Registerkarte Ausführung
- 9. Öffnen Sie eine neue Registerkarte automatisch in iOS
- 10. Öffnen Sie eine neue Registerkarte in Safari programmgesteuert mit JS
- 11. Javascript für neue Registerkarte (STRG + T), neues Fenster (STRG + N)?
- 12. Auslöser Chrome-Erweiterung auf neue Registerkarte öffnen
- 13. Öffnen Sie eine neue Registerkarte, wenn SQL-Abfrage erfolgreich ist
- 14. Öffnen Sie eine neue Registerkarte auf Schaltfläche klicken in AngularJS
- 15. So deaktivieren Sie die Registerkarte in einer Registerkarte in gwt
- 16. Öffnen Sie neue Registerkarte von Code hinter in Asp.net MVC
- 17. Öffnen Sie neue Registerkarte von Drupal mit Javascript
- 18. So entfernen Sie die Registerkarte von TabHost
- 19. Starten Sie Autostart_console.bat beim Start oder neue Registerkarte in ConEmu?
- 20. Firefox Öffnen Sie eine neue Registerkarte anstelle eines Pop-Fensters?
- 21. JSF <h: outputlink> Navigieren Sie zu neue Registerkarte
- 22. ExtJS Anzeige Link in neue Registerkarte
- 23. Datei herunterladen, neue Registerkarte im Browser öffnen
- 24. Wie erstellt man eine neue Registerkarte mit Stil als Registerkarte Beschreibung für Lagerartikel?
- 25. site.master Menüelement öffnet die angeforderte Seite und neue Registerkarte
- 26. eine neue Registerkarte öffnen PDF-Datei lesen
- 27. Entfernen Sie die Zeile unter der Registerkarte der Registerkarte Steuerelement
- 28. Ändern von Visual Studio 2008 Neue Registerkarte
- 29. Chrome Webdriver kann nicht neue Registerkarte öffnen
- 30. OnActivated funktioniert nur, wenn neue Registerkarte geöffnet
Invalidate nur für die neue Registerkarte ?. Was passiert, wenn ich zu meinem vorherigen geöffneten Tab zurückkehre? Sollte die Sitzung bestehen? –