Skip to content

Commit

Permalink
#15 added livewire support
Browse files Browse the repository at this point in the history
  • Loading branch information
iSteuding committed Aug 18, 2023
1 parent 32f6b7a commit b5ad588
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 2 deletions.
12 changes: 12 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,18 @@ If you would like to generate URLs without a session ID, add a `NO_ADD_SID` para

{{ URL::to('/', ['NO_ADD_SID' => true]) }}

Livewire Support
----------------
Too include Session Id's use this script:

<script type="text/javascript">
document.addEventListener('livewire:load', function(event) {
Livewire.addHeaders({
'X-session': '{{ Session::getId() }}',
})
});
</script>

Warning
-------

Expand Down
14 changes: 12 additions & 2 deletions src/StartSessionMiddleware.php
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,8 @@ public function getSession(\Illuminate\Http\Request $request)
{
$session = parent::getSession($request);

if ($request->has($session->getName())) {
$session->setId($request->input($session->getName()));
if ($id=$this->resolveSessionParameter($request, $session)) {
$session->setId($id);

if (!$session->has(self::LOCKED_FIELD)) {
$this->lockToUser($session, $request);
Expand All @@ -76,4 +76,14 @@ protected function addCookieToResponse(Response $response, Session $session)

parent::addCookieToResponse($response, $session);
}

protected function resolveSessionParameter($request, $session)
{
if ($request->has($session->getName())) {
return $request->input($session->getName());
}
if ($request->hasHeader('x-session')) {
return $request->header('x-session');
}
}
}

0 comments on commit b5ad588

Please sign in to comment.