Session ist nach Klick auf Zurück-Button wieder aktiv

Diskutiere Session ist nach Klick auf Zurück-Button wieder aktiv im Web Tier Forum; In meiner Webanwendung kann sich der User ausloggen. Jedoch ist er wieder in der Session, sobald er auf den Zurück-Button klickt. Am besten wäre...

  1. JuriW
    JuriW Mitglied
    In meiner Webanwendung kann sich der User ausloggen.
    Jedoch ist er wieder in der Session, sobald er auf den Zurück-Button klickt.

    Am besten wäre es, wenn dem User beim Versuch zurückzukehren eine Fehlerseite angezeigt wird.

    Wie kann ich das verhindern?

    Mein Servlet sieht so aus:
    Code (Java):
    package servlets;

    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;

    @WebServlet("/LogoutServlet")
    public class LogoutServlet extends HttpServlet {
        private static final long serialVersionUID = 1L;

        protected void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
         
            HttpSession session=request.getSession();
            session.removeAttribute("email");
            session.invalidate();
            response.sendRedirect("html/logout.jsp");
            return;

        }
    }
     
     
  2. Vielleicht hilft dir dieses Buch hier weiter.
  3. httpdigest
    httpdigest Bekanntes Mitglied
    Wenn der User den Browser-Backbutton drückt, hat er nicht wieder automatisch die Session (bzw. gilt als eingeloggt), sondern sieht einfach nur die Browser-gecachte Seite, die ihm ausgeliefert wurde, als er noch die Session hatte. Wenn er dann z.B. F5 drücken würde oder irgendeine Aktion auf der Seite auslöst, die dazu führt, dass ein Server-Request abgesendet wird und der Server die Session prüfen würde, würde die Session bereits invalide sein.
     
  4. JuriW
    JuriW Mitglied
    Okay, gut zu wissen!
    Ich überprüfe in auf meiner .jsp Datei ob die Session aktiv ist:
    HTML:
    <c:choose>
            <c:when test="${anmeldung != null }">
                    <nav>
                        <ul>
                            <c:if test="${anmeldung.email == 'admin'}">
                                <li><a href="adminIndex.jsp">Administration</a></li>
                            </c:if>
                            <li><a href="../LogoutServlet">Logout</a></li>
                            <li><a href="kontakt.jsp">Kontakt</a></li>
                            <li><a href="impressum.jsp">Über uns</a></li>
                            <li><a href="index.jsp">Startseite</a></li>
                        </ul>
                    </nav>
            </c:when>
                <c:otherwise>
                    <nav>
                        <ul>
                            <li><a href="registrierung.jsp">Registrieren</a></li>
                            <li><a href="login.jsp">Login</a></li>
                            <li><a href="kontakt.jsp">Kontakt</a></li>
                            <li><a href="impressum.jsp">Über uns</a></li>
                            <li><a href="index.jsp">Startseite</a></li>
                        </ul>
                    </nav>
                </c:otherwise>
            </c:choose>
    Auch nachdem ich mich ausgeloggt habe, sehe ich den ersten Zweig (mit Logout, nachdem ich zurück gegangen und F5 gedrückt habe)

    Wie überprüfe ich bei jedem Aktualisierungsvorgang serverseitig, ob die Session aktiv ist?
     
    Zuletzt bearbeitet: 12. Jan. 2019
  5. horstiii2
    horstiii2 Bekanntes Mitglied
    Nein, es liegt noch ein Verständnisproblem vor denn gleicher Inhalt bei "Zurück" nach "Logout" ist kein unerwünschtes Verhalten.
     
  6. Wenn du Java lernen möchtest, empfehlen wir dir dieses Buch hier
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Session ist nach Klick auf Zurück-Button wieder aktiv - Ähnliche Themen

Weiterleiten von empfangenen Nachrichten eines StompSessionHandlers
Weiterleiten von empfangenen Nachrichten eines StompSessionHandlers im Forum Allgemeine Java-Themen
Hibernate Session closed nach Transaction commit?
Hibernate Session closed nach Transaction commit? im Forum Datenbankprogrammierung
SessionAttribut nach j_security_check setzen
SessionAttribut nach j_security_check setzen im Forum Web Tier
JSF: Best Practice "Session invalidate nach Schließen des Browsers"?
JSF: Best Practice "Session invalidate nach Schließen des Browsers"? im Forum Web Tier
tomcat session timeout - und was danach?
tomcat session timeout - und was danach? im Forum Allgemeines EE
Thema: Session ist nach Klick auf Zurück-Button wieder aktiv