Как получить пользователя из JWTAuth с токеном в laravel 5.5 - PullRequest
0 голосов
/ 21 мая 2018

Я собираюсь использовать JWTAuth для создания токена из модели.Поэтому я использовал этот метод:

$token = JWTAuth::fromUser($user);

В моих маршрутах API у меня есть:

Route::post('login', 'AuthController@login');

Route::group([

    'middleware' => 'jwt.auth',
    'prefix' => 'auth'

], function ($router) {

    Route::post('logout', 'AuthController@logout');
    Route::post('refresh', 'AuthController@refresh');
    Route::get('me', 'AuthController@me');
});

Теперь у меня должен быть доступ, чтобы получить пользователя из JWTAuth.Затем я использую:

$user = JWTAuth::parseToken()->authenticate();

Но он возвращает ложь.

1 Ответ

0 голосов
/ 21 мая 2018

Вы должны использовать как в api.php

Route::post('user', 'UserController@createUser');

и в вашем контроллере

public function getAuthUser(Request $request) {
        try {

            if (!$user = JWTAuth::toUser($request->token)) {
                return response()->json(['code' => 404, 'message' => 'user_not_found']);
            } else {

                $user = JWTAuth::toUser($request->token);
                return response()->json(['code' => 200, 'data' => ['user' => $user]]);
            }
        } catch (Exception $e) {

            return response()->json(['code' => 404, 'message' => 'Something went wrong']);

        }
    }

надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...