laravel-impersonate icon indicating copy to clipboard operation
laravel-impersonate copied to clipboard

Impersonation breaks down when calling the route('impersonate', $id) in vue

Open luigibriganti opened this issue 2 years ago • 2 comments

Hi, I have a Laravel project that runs on Inertia/Jetstream + Vue and I installed impersonate following the procedure, but maybe I missed something.

I followed the Simple usage guidelines, creating a get route in web.php like this:

Route::get('/impersonate/{id}', function($id){ Auth::user()->impersonate($id); })->name('impersonate');

But when I call it I get this error: Schermata del 2022-08-26 09-41-33

Following the Using the built-in controller guidelines, instead, I get the following error in console:

Schermata del 2022-08-26 09-43-19

this one is get calling route('impersonate', user.id) in my vue template.

Did I miss something or am I doing something wrong? Thanks.

luigibriganti avatar Aug 26 '22 07:08 luigibriganti

I might be wrong, but you need to pass a model instead of ID. Try using route model binding and see if it works: Route::get('/impersonate/{user}', function(User $user){ Auth::user()->impersonate($user); })->name('impersonate');

raducostinean avatar Feb 27 '23 21:02 raducostinean

@luigibriganti your ziggy config might be limiting what routes are sent down. I hit that recently. check config/ziggy.php

Also, did you add Route::impersonate() to your web routes?

mgkimsal avatar Sep 29 '23 16:09 mgkimsal