Level 1
Try this?
$user = auth('api')->user();
$user = auth('web')->user();
2 likes
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
My api routes use passport access token
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'passport',
'provider' => 'users',
],
],
routes/api.php
Route::group(['middleware' => 'auth:api'], function () {
Route::post('/user', 'UserController@apiUser');
}
When post to /api/user, I want to get Auth::guard('web')->user() in this route, but only get Auth::guard('api')->user().
routes/web.php
Route::group(['middleware' => 'auth'], function () {
Route::post('/user', 'UserController@index');
}
When post to /user, I want to get Auth::guard('api')->user() in this route, but only get Auth::guard('web')->user().
Because I want to log in at the same time. When using the api login to get the access token, can also log in to the web at the same time, or can get the api access token at the same time when log in to the web.
Please or to participate in this conversation.