问题标签 [laravel-session]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
51 浏览

php - 重定向视图后会话仍然提交

我正在使用 Laravel 5.8 开发一个在线商店项目,在这个项目中我添加了一个复选框,用于检查用户是否想通过他的在线钱包支付价格:

然后在控制器上,如果用户选中了复选框,我添加了这个来提交会话:

然后在视图中,我尝试了这个:

基本上我需要在这里做的是检查,如果会话wallet已提交,根据他的用户 ID 显示所有可用的钱包。

但现在的问题是,当我刷新页面时,它仍然显示钱包。这意味着会话wallet仍然存在!

我怎么解决这个问题?

0 投票
1 回答
170 浏览

laravel - Laravel 8 配置“SESSION_STORE”和“SESSION_DRIVER”

Laravel 8 有配置文件config\session.php

该文件有 2 个参数要存储

'driver' => env('SESSION_DRIVER', 'file'),

'store' => env('SESSION_STORE', null)

两者都可以是"apc", "dynamodb", "memcached","redis"

我看到的唯一区别是“驱动程序”也可以是"file", "cookie", "database","array"

请告诉我有什么区别,为什么我们在那里有 2 个参数?

0 投票
0 回答
76 浏览

laravel - 如何防止在其他计算机上使用用户的会话(如漏洞利用)

我创建了一个Laravel 应用程序。成功登录帐户后,Laravel 会制作两个 cookie,即Laravel_session 和 XSRF-TOKEN

Laravel_session 攻击 Laravel 应用程序

当我只是简单地复制 Laravel_session 并将其粘贴到另一个浏览器或另一台计算机的浏览器中时,它会打开同一个帐户。

请告诉我如何防止它。

0 投票
2 回答
52 浏览

php - Laravel 5.8:请求会话似乎没有在控制器上设置会话

我的请求会话似乎没有在控制器中设置会话。正如你所说的$request->session()->flash('charge_wallet',$wallet);,我试图设置会话charge_wallet

然后在视图中bankGateWay.getToken,我尝试检查会话是否存在。但它返回不存在不知何故!那么这里出了什么问题呢?我该如何解决这个问题?

控制器

看法

0 投票
0 回答
131 浏览

php - 注销后带有数据库驱动程序的 Laravel Session 不断更新

我切换到databaseSession 驱动程序并迁移了表。我注意到即使在注销操作之后,last_activity表中的值也会在每次刷新后不断更新,即使用户不再登录也是如此。

我已经尝试从数据库的记录中删除它,但是一旦用户在登录页面刷新,它就会再次插入。

我相信我在注销用户方面做错了。我希望 Laravel 停止刷新会话记录,因为如果每个注销的用户都在刷新时继续访问数据库,这可能会导致问题。

我是这样登录的:

我这样注销:

这是一个通过 Sanctum 的 SPA 项目。

配置/会话.php

用户访问 /login 页面,然后他们被重定向到 /dashboard。基本上,/dashboard 需要授权,否则,你不需要登录。

我试过/dashboardpath字段使用并清除配置,它没有工作。

** 我注意到无论用户是否登录,会话都会被注册,只要用户访问该网站,它就会被注册。我的理解是,它发生在用户登录后,因为每当客人访问时插入记录会很麻烦。

我的问题变成了以下问题:如何防止这种行为发生?我只想将会话保存限制在特定路径上,即 /dashboard,并且我想忽略未登录用户的会话跟踪。他们注销的那一刻,会话被破坏。

0 投票
1 回答
52 浏览

laravel - 将 Laravel 会话驱动程序从 Cookie 更改为数据库

我想更改 Laravel 会话驱动程序。该应用程序已经启动并运行。有一个辅助类,其中包含访问会话的 getter、setter 和修饰符。

我的问题

如何将驱动程序从 cookie 更改为数据库?将会话驱动程序从 cookie 更改为数据库的正确程序是什么?

0 投票
0 回答
38 浏览

php - 2 个 Laravel 应用程序之间的共享会话不起作用

我有 2 个 Laravel 应用程序

应用 1 基于 Laravel 5.4 应用 2 基于 Laravel 8

两个应用程序都连接到同一个数据库并共享相同的APP_KEY

两个应用程序在 .env 文件中都有这个

SESSION_DRIVER=database

SESSION_LIFETIME=120

SESSION_DOMAIN=.domain.com

每次我打开应用程序 1 时,应用程序 2 都会注销,当我登录应用程序 2 时,它不会与应用程序 1 共享。

有人可以帮忙吗?

0 投票
3 回答
36 浏览

php - 会话放置似乎无法正常工作

我正在使用 Laravel 5.8,我想确保用户只能每 2 小时提交一次表单(只要会话处于活动状态)。

所以我在控制器上尝试了这个:

因此,每次用户提交新请求时,request_has_been_sent都必须设置会话。

因此,在用户下次提交表单时,如果会话仍处于活动状态,You just submitted a request and cannot submit a new one则会出现该消息。

但现在的问题是它不起作用。事实上,用户仍然可以在提交请求后立即提交另一个请求。

这意味着会话没有以某种方式设置。

那么这里出了什么问题?我怎样才能正确地做到这一点?

0 投票
0 回答
37 浏览

php - 移动设备上的 Laravel 社交名流 InvalidStateException

我在使用 Laravel 编写的 Web 应用程序中使用 github oauth。

我将我的应用程序拉到生产环境中,我遇到了这个问题。

当我在台式机或笔记本电脑上使用该应用程序时,登录没有问题,但是当我尝试使用 github 通过移动设备登录时,它给了我这个异常。我四处寻找解决方案而不是看到“SESSION_DOMAIN”解决方案,但是当我尝试这个解决方案时,我的应用程序的会话停止工作并且移动设备上的问题没有解决。

当我尝试使用小米的默认网络浏览器登录github时,我成功登录了。但是当我尝试使用chrome时,我又遇到了错误。(用很多手机试过)

编辑:当我尝试使用 chrome 83.0、chrome 97.0、Yandex Browser、Opera 和 Mozilla 时没有问题,但是当我在 ios 上尝试使用 chrome 93.0 或 safari 时,我遇到了这个异常。