Я хотел бы создать промежуточное ПО, которое проверяет наличие маркера на предъявителя.
Если он присутствует, мне нужно получить пользователя и передать его по маршруту.
Я не смог этого сделать. К настоящему времени я только что создал промежуточное программное обеспечение, которое проверяет, присутствует ли токен и подключен ли он к пользователю.
Проблема в том, что в маршруте мне нужно снова получить пользователя, и я бы хотел этого избежать.
Это код промежуточного программного обеспечения:
public function handle($request, Closure $next)
{
$bearer_token = $request->bearerToken();
try {
if ($bearer_token) {
if (\App\Helpers\ApiHelper::getUserByToken($request->bearerToken())) {
return $next($request);
} else {
throw new \Exception('Not authorized');
}
} else {
throw new \Exception('Not authorized');
}
} catch (\Exception $exc) {
return response()->json([
'error' => 'Not authorized.'
],403);
}
}