Промежуточное программное обеспечение, которое проверяет токен на предъявителя, получает пользователя и передает его на маршрут - PullRequest
0 голосов
/ 11 января 2019

Я хотел бы создать промежуточное ПО, которое проверяет наличие маркера на предъявителя.
Если он присутствует, мне нужно получить пользователя и передать его по маршруту.

Я не смог этого сделать. К настоящему времени я только что создал промежуточное программное обеспечение, которое проверяет, присутствует ли токен и подключен ли он к пользователю.

Проблема в том, что в маршруте мне нужно снова получить пользователя, и я бы хотел этого избежать.

Это код промежуточного программного обеспечения:

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);
    }
}
...