2016-09-06 100 views
1

我试图访问存储的Session ID并将其用作参考。laravel 5.2会话ID不断变化

laravel中,session ID在每个请求中都会不断变化。我知道这样做是为了避免session hijacking

一个可能的解决方案是使用Session::unguard(),但如何使用它?

上面的代码没有帮助,因为session ID不断发生变化:

 $ses = session()->getId(); 
    $a =session()->getId();  
    $chat = chatParticipants::where("session_id", $a)->first(); 
+0

你为什么不产生一些独特的价值自己和存储/检索呢? –

回答

1

两个解决方案:

  1. 您可以手动重新生成ID为每docs

    $request->session()->regenerate();

  2. 存储每个会话的密钥,并将其用作参考。

要存储一个新的关键:

`session(['key' => 'value']);` 

要检索的关键:

$value = $request->session()->pull('key', 'default');