Redirigir automáticamente cuando la sesión del usuario expira en Laravel 5.5
Quiero redirigir automáticamente a mi página de inicio de sesión cuando la sesión de un usuario expire usando las funciones de Laravel. Redirijo cuando un usuario intenta acceder a otra página y la sesión caduca. He configurado una vida útil que ayuda a cerrar sesión automáticamente debido a la inactividad del usuario, y lo que quiero es redirigir instantáneamente cuando se agote el tiempo de espera de esa sesión.
Intenté usar JavaScript para el tiempo de espera, pero esto no funciona cuando el usuario está usando más de una página a la vez.
También intenté usar AJAX, enviando solicitudes para verificar el estado de la sesión cada minuto, esto funciona, pero cuando el proyecto está en producción, hay muchas solicitudes al servidor solo para verificar el estado de la sesión. (Este es el enlace que me ayudó para esto https://laracasts.com/discuss/channels/laravel/help-is-needed-on-idle-session-time-out)
Ahora, estoy intentando usar App/Exceptions/Handler.php, con la función unauthenticated():
protected function unauthenticated($request, AuthenticationException $exception)
{
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
return redirect()->guest(route('login'));
}
(Redirigir al usuario a la página de inicio de sesión cuando caduca la sesión - Laravel )
Esta última solución no funciona, no aparece ningún error pero no hace absolutamente nada.
Si es posible, por favor dígame la forma correcta de hacerlo.
Mostrar la mejor respuesta