php - Laravel 会话数据无法立即访问
问题描述
如果用户重新加载他们正在处理的页面,我一直在尝试将表单数据保存到会话中。
我当前的设置涉及来自“beforeunload”事件侦听器的 ajax 调用
window.addEventListener('beforeunload', leaving());
function leaving() {
axios.post('save-to-session', this.obj)
},
这确实在刷新时成功将数据发送到控制器,然后将其保存到会话
public function saveToSession()
{
session()->put('data', request()->all());
return response()->json();
}
但是,如果我再次刷新页面并 dd() 会话,我的会话将显示为未更新。在第二次刷新同一页面时,会话更新而不启动“saveToSession”方法。
public function index()
{
dd(session()->all());
}
谁能弄清楚这种行为的根源,或者将数据保存到即时访问会话中的传统方法是什么?
- 有关更多信息,我正在使用 Intertia 和 Vue。
- 我在 env 中的会话设置如下所示
- 我的会话文件确实得到了更新
SESSION_DRIVER=file
SESSION_LIFETIME=120
解决方案
推荐阅读
- django - Django Rest Framework:如何自定义 serializer.data 的值?
- python-2.7 - 气流无法初始化数据库
- postgresql - 在 postgresql 中按非字母顺序排序
- python - 从 xls 工作表中获取数据并将它们添加到 python 命令中
- python - 如何在 PyQt 中存储线程本地数据?
- java - Java FX 8 在 Application init() 方法中使用 Platform.runLater() 来显示警报/登录框
- c# - 有没有办法在方法输入参数上添加数据注释?
- python - 在 python 中将变量值传递给 SQL 时出现多个 aguements 错误
- javascript - JSPDF 打印不正确,显示空白 pdf
- python - 在关闭文件的 Python 3 I/O 操作中附加文件