Подскажите, использую sanctum для авторизации, решил добавить свою middleware, которая должна проверять Auth::user() Однако при таком вызове:
Route::middleware('auth:sanctum')->middleware('activated')->group(function () {
Route::get('/name', function (Request $request) {
return response()->json(['user' => auth()->user()]);
});
});
Auth::user() внутри activated возвращает null;
Однако, если использовать эту middleware к конкретному маршруту, а не к группе - всё работает:
Route::middleware('auth:sanctum')->group(function () {
Route::get('/name', function (Request $request) {
return response()->json(['user' => auth()->user()]);
})->middleware('activated');
});
Но это неудобно, ведь маршрутов могут быть сотни. Сколько я понимаю, проблема в порядке вызова middleware.
Пробовал в Http/Kernel.php делать так:
protected $middlewarePriority = [
\App\Http\Middleware\Authenticate::class,
\App\Http\Middleware\CheckUserActivation::class
];
Не даёт положительного эффекта.
Как запустить activated после auth:sanctum, чтобы иметь внутри неё Auth::user()?