簡體   English   中英

Laravel 4.2在會話數據中將用戶ID存儲在哪里?

[英]Where does Laravel 4.2 store the user ID within the session data?

由於時間的限制,我試圖把頭放在Laravel如何處理會話數據上,而又不深入研究代碼。

似乎存儲在cookie中的會話ID(默認為“ laravel_session”)是加密的,因為它是一個不同的值,比如果我打印Session :: getId()的值要長得多

因此,我假設Laravel在刪除cookie之前先加密了此值,然后在每次需要會話數據時解密該值以進行會話數據查找。

所以我想我的第一個問題是:

1.為什么會這樣混淆會話ID? 我以為是出於安全目的?

其次,一旦從磁盤中提取了會話數據,我就看不到“ user_id”(或類似措詞)鍵。 實際上,除了CSRF _token值之外,我唯一看到的是某些條目,例如'login_42e5d2c566bd0811218f0cf078b76bfd'= 1。

2.這些數據負責什么?

3.有人可以簡要介紹一下Laravel如何將會話數據與特定用戶ID相關聯嗎?

為什么要深入研究會話以獲取user ID 您可以在沒有登錄的情況下進行會話-因此user ID並不總是意味着某種意義。

如果您想要當前登錄的用戶-那么您應該使用Auth::user()->id

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM