Seleccionar página

Ya hemos visto cómo un usuario puede registrarse en nuestra aplicación e iniciar sesión. Ahora es el turno del cierre de sesión. Como nuestra aplicación se basa en tokens y no en cookies, esta tarea se realizará de diferente forma al que Laravel nos provee por defecto. Necesitamos hacer lo siguiente cuando un usuario pulse en Logout o Cerrar Sesion:

  • Crear la ruta necesaria.
  • Guardar la fecha y hora de última conexión.
  • Poner el campo online a 0/false.
  • Invalidar el token actual.
  • Devolver mensaje de deslogado con éxito.

Primero añadimos la ruta en el archivo de rutas:

Ahora el controlador:

Vamos a crear el manejador del evento disparado en la linea 6. Este evento es propio de Laravel, nosotros nos ocuparemos de actuar cuando éste se dispare.

Para ello, registramos el evento (event) y su manejador (listener) en el siguiente archivo:

Ahora generamos los archivos (en este caso, solo el listener será generado ya que el evento ya existe en carpeta vendor de Laravel y no lo vamos a modificar):

Abrimos y editamos:

Para que no haya errores, los campos que se actualizan en el listener, deben estar en la migración de la tabla «users» y en el modelo «User» tal que: