Laravel 4.2在哪里将用户ID存储在会话数据中?

时间:2015-01-20 20:40:10

标签: php session laravel laravel-4 session-variables

由于时间限制,我试图绕过Laravel如何处理会话数据而不深入研究代码。

存储在cookie中的会话ID(默认为“laravel_session”)似乎是加密的,因为它是一个不同的,比我打印Session :: getId()的值更长的值。

所以我假设Laravel在删除cookie之前加密这个值,然后解密该值以在每次需要会话数据时进行会话数据查找。

所以我想我的第一个问题是:

1。为什么会话ID会像这样混淆?我认为这是出于安全目的?

其次,一旦从磁盘中提取,我在实际会话数据中看不到'user_id'(或类似措辞)键。事实上,除了CSRF _token值之外,我唯一看到的是像“login_42e5d2c566bd0811218f0cf078b76bfd”= 1这样的条目。

2。这些数据负责什么?

第3。有人可以简要介绍一下Laravel如何将会话数据与特定用户ID相关联吗?

1 个答案:

答案 0 :(得分:-1)

为什么要深入了解会话以获取user ID?您可以在没有登录的情况下进行会话 - 因此user ID并不总是意味着什么。

如果您想要当前登录的用户 - 那么您应该使用Auth::user()->id