Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Leguim en 22 Octubre 2019, 23:14 pm



Título: [Pregunta]: ¿Como detecto cuando un usuario cierra el cliente/navegador?
Publicado por: Leguim en 22 Octubre 2019, 23:14 pm
Buenos días,
básicamente eso.. necesitaba saber como podría detectar cuando un usuario cierra su navegador (no me refiero a cerrar la pestaña), lógicamente esto lo quiero hacer con javascript o JQuery...

Gracias...


Título: Re: [Pregunta]: ¿Como detecto cuando un usuario cierra el cliente/navegador?
Publicado por: @XSStringManolo en 30 Octubre 2019, 12:05 pm
Lo puedes hacer con una cookie sin fecha de expiración. Se borra al cerrar el navegador.
Tendrás que meterle alguna lógica a la parte del cliente tipo:
Cada minuto compruebo si existe la cookie. Si existe mando una petición al servidor indicándolo. Y en el servidor una lógica tipo: Si no se envió la cookie, el usuario se desconectó.
https://developer.mozilla.org/es/docs/DOM/document.cookie https://www.w3schools.com/js/js_cookies.asp


Por el otro lado tienes sessionstorage para lo de la pestaña.
Código
  1. var respuesta = "Si";
  2.  
  3. sessionStorage['estaElScriptCorriendo'] = respuesta;
  4. var obtenerRespuesta = sessionStorage['estaElScriptCorriendo'];
  5. console.log(obtenerRespuesta);
Ten cuidado con ciertos caracteres y objetos. Si los usas tienes que parsear.