2016-09-06 3 views
1

Ich versuche, auf eine gespeicherte Session ID zugreifen und verwenden Sie sie als Referenz.Laravel 5.2 Sitzungs-ID ändert sich ständig

In laravel ändert sich die session ID bei jeder Anfrage. Ich verstehe, dass dies getan wurde, um session hijacking zu vermeiden.

Eine mögliche Lösung ist, Session::unguard() zu verwenden, aber wie man das benutzt?

Der obige Code nicht hilft, weil die session ID hält über die Änderung:

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

Warum Sie sich und speichern einige einzigartige Wert nicht erzeugen/dass anstelle abrufen? –

Antwort

1

Zwei Lösungen:

  1. Sie die ID regenerieren kann manuell gemäß dem docs:

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

  2. Speichern eines Schlüssels bei jeder Sitzung und Verwendung als Referenz.

Um einen neuen Schlüssel zu speichern:

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

den Schlüssel abzurufen:

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