none
Unica sesion, evitando multiples sesiones RRS feed

  • Pregunta

  • Es algo complejo en ASP.NET MVC mantener una única sesión e impedir que haya más sesiones.

    No podemos confiar en un evento tipo "Session_End", que hay muchas circunstancias en las que no se dispara, y no sé si aplica para ASP.NET MVC.

    De alguna forma, hay que guardar que el usuario sigue "activo".

    algún otro evento del ciclo de vida de las páginas MVC? La idea es grabar la hora actual como "última actividad" del usuario.

    Eso permitirá determinar si hay un cierto umbral de tiempo para considerarlo como una sesión "perdida" (es decir, se le olvidó hacer logout).

    Alguna idea?

    martes, 10 de septiembre de 2019 20:36

Todas las respuestas

  • hola

    Si usas el objeto Session no hay eventos infalibles, como mencionaste tienes el Session_End que a lo sumo se ejecutara si se vence el timeout 

    si necesitas algo mas inmediato se podrias detectar el cierre del browser con un evento javascript enviando por ajax el dato que se esta cerrando para que termine la session o registre la finalizacion de la actividad

    Se usa el  window.onbeforeunload 

    Capture Browser Or Tab Close Event Jquery Javascript


    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 10 de septiembre de 2019 22:09