php - 登录会话不会在 Laravel 6 中持续存在
问题描述
最近我将我的 laravel 项目从 5.1 降级到 6。我像这样升级了项目->
- 首先我创建了新的 laravel 6 项目。
- 然后我将我的代码从旧版本复制粘贴到新版本。
在这样做的同时,我面临着这个问题。我使用单独的控制器和路由来验证用户。在验证用户身份时,登录会话不会持续存在,因此它再次将我重定向回登录页面。我检查了我的登录凭据是否正确并且Auth::attempt
返回 true。但是当我将它重定向到我想要的路线时,它会将我发送到登录页面。
public function signInAction(Request $request)
if (Auth::attempt($loginCredentials)) {
$logonId = $secUserLogon[0]->logon_id;
$request->session()->put('sessLogonId', $logonId); // this session data in not available later on
return redirect()->intended(route('home::onlineInfo'));
}
}
我找到了一种解决方法,这似乎不对。我已将 true 作为第二个参数传递,Auth::attempt
其中让我登录用户。但是如果我在会话中放置任何东西,它也不会持续存在,如果我实现记住我,如果用户传递错误,它将不起作用。谁能帮我解决这个问题?
解决方案
您是否尝试过使用全局session()
助手?这可能更可靠。https://laravel.com/docs/6.x/session#storing-data
推荐阅读
- php - 使用 PDO 准备语句对字符串进行编码
- python-3.x - 如何比较来自 PySpark 数据帧的记录
- .net - Acumatica - 具有计算功能的 PXDBScalar
- reactjs - React Material UI:使文本字段保持在一行
- spring-boot - Apache Camel JMS/AMQP 组件仅在需要时创建目标队列
- if-statement - 如何修复:在关联列表中移动列时键入错误
- spring-data-jpa - NativeSql 查询到 JPQL 查询转换
- swift - 如何快速沿折线移动标记
- angular - 无法在 Angular7 中向我的请求 API 添加标头
- python - 如何在python flask form post api中加载和读取excel文件