diff --git a/routes/api.php b/routes/api.php index c315976..554aff9 100644 --- a/routes/api.php +++ b/routes/api.php @@ -1,6 +1,6 @@ name('wire-extender.embed'); diff --git a/src/Http/Middlewares/IgnoreForWireExtender.php b/src/Http/Middlewares/IgnoreForWireExtender.php index 0a612b2..a3946f9 100644 --- a/src/Http/Middlewares/IgnoreForWireExtender.php +++ b/src/Http/Middlewares/IgnoreForWireExtender.php @@ -19,6 +19,11 @@ trait IgnoreForWireExtender */ public function handle($request, Closure $next) { + // Embed route must be skipped, otherwise it will not work with sessions + if ($request->routeIs('wire-extender.embed')) { + return $next($request); + } + // We only care about requests from an embedded component if (! $this->isLivewireUpdateRequest($request)) { return parent::handle($request, $next); @@ -41,7 +46,7 @@ public function handle($request, Closure $next) private function isLivewireUpdateRequest($request): bool { return $request->method() === 'POST' && - app(LivewireManager::class)->getUpdateUri() === $request->getRequestUri() && + $request->getRequestUri() === app(LivewireManager::class)->getUpdateUri() && $request->hasHeader('X-Wire-Extender') && $request->hasHeader('X-Livewire'); }