Я получаю информацию о пользователе из токена аутентификации JWT следующим образом:
{
"user": {
"id": 5,
"email": "shahzad@chiro.com",
"status": 0,
"created_at": "2019-04-12 07:33:28",
"updated_at": "2019-04-12 07:33:28",
}
}
и мой контроллер:
public function getAuthenticatedUser()
{
try {
if (! $user = \Tymon\JWTAuth\Facades\JWTAuth::parseToken()->authenticate()) {
return response()->json(['user_not_found'], 404);
}
} catch (Tymon\JWTAuth\Exceptions\TokenExpiredException $e) {
return response()->json(['token_expired'], $e->getStatusCode());
} catch (Tymon\JWTAuth\Exceptions\TokenInvalidException $e) {
return response()->json(['token_invalid'], $e->getStatusCode());
} catch (Tymon\JWTAuth\Exceptions\JWTException $e) {
return response()->json(['token_absent'], $e->getStatusCode());
}
return response()->json(compact('user'));
}
но я также хочу получить дополнительную информацию, например, из какого модуля идет этот токен пользователя, я хочу правильно проверить этот токен, в настоящее время у меня есть различные модули, такие как Chiro
, PT
и ACCU
.
Когда я вхожу в систему, я получаю эту информацию в формате JSON.
{
"status": true,
"message": "Login successfully",
"data": {
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9sb2NhbGhvc3RcL2ZlYXR1cmUtbWFzdGVyXC9hcGlcL2ZkX2xvZ2luIiwiaWF0IjoxNTU1MDYzMTAzLCJleHAiOjE1ODY1OTkxMDMsIm5iZiI6MTU1NTA2MzEwMywianRpIjoiMFMxU3EzOVJRbVhYZFB6NCIsInN1YiI6NywicHJ2IjoiNGFjMDVjMGY4YWMwOGYzNjRjYjRkMDNmYjhlMWY2MzFmZWMzMjJlOCIsImFjY2Vzc19tb2R1bGUiOiJjaGlybyIsIm1vZHVsZV9pZCI6NiwidXNlcl9pZCI6N30.pJyWSlvHfJhn5bHk4_By-cAt5jzy15QgtlhGdyerriQ",
"userData": {
"id": 7,
"email": "shahzad12@chiro.com",
"status": 0,
"created_at": "2019-04-12 09:58:01",
"updated_at": "2019-04-12 09:58:01",
"created_by": null,
"updated_by": null,
"is_super_admin": null,
"basicInfo": null
},
"userInfo": {
"id": 103,
"user_id": 7,
"clinic_name": "Health care",
"first_name": "Dr wick",
"middle_name": "john",
"last_name": "David",
"cell_phone_no": "111-111-1111",
"phone_extension": 877,
"doc_email": "nasir123@gmail.com",
},
"module": {
"id": 6,
"type": "Chiro",
"slug": "chiro"
},
Когда я вхожу в этот ответ, говорят, что это пользователь из модуля Chiro
, и когда я проверяю этот токен, используя мой метод, которым я поделился, он возвращает мне только электронную почту пользователя, а не модуль.
Как я могу справиться с этой ситуацией, когда я проверяю токен, я также должен получить модуль?
Ваша помощь будет высоко оценена.