我的laravel项目的登录会话有问题。登录是使用正常的Laravel脚手架,它似乎工作得很好。登录后,用户将获得一个单页应用程序,该应用程序通过Ajax与后端进行通信。
但是用户在几分钟后就会退出。哪种打破单页应用程序,因为用户正在构建其中的东西,然后由于被注销而无法保存。
在Laravel的session.php中,'lifetime'设置为120分钟。而我现在正在使用Auth中间件来保护路线。这似乎是一个问题。当通过ajax调用受保护的路由时,用户会收到消息“未授权”。当重新加载页面时,用户将被注销。
这是auth中间件
中的句柄功能public function handle($request, Closure $next)
{
if ($this->auth->guest()) {
if ($request->ajax()) {
return response('Unauthorized.', 401);
} else {
return redirect()->guest('auth/login');
}
}
return $next($request);
}
任何想法可能是什么?
答案 0 :(得分:0)
设置
'lifetime' => 120, // number of minutes that you wish the session to be allowed to remain idle before it expires.
'expire_on_close' => true,
在配置文件夹中的session.php中找到