У меня простой случай, и мне нужен твой совет.Я использую пакет Tymon JWT.У меня есть промежуточное ПО JWT, и это часть его кода:
$user = JWTAuth::parseToken()->authenticate();
if(!$user){
return response()->json(['message'=>trans("responseMessages.user_not_exists")], 403);
}
$request->request->set('user', $user);
то, что делает это промежуточное ПО, заключается в том, что оно пытается создать $ user из заданного токена jwt, и в случае успеха пользователь может продолжить.так вот мой вопрос, в этом коде (последняя строка) я передаю пользовательский объект в контроллер через запрос, чтобы я мог иметь прямой доступ к пользовательской модели в контроллере.Мне просто интересно, это хорошая идея?или может это будет проблематично?
другой вариант - записать $user = JWTAuth::toUser(JWTAuth::getToken())
в функции контроллера или передать идентификатор пользователя через запрос вместо всей модели.но в этих случаях я дважды общаюсь с базой данных, в промежуточном программном обеспечении и в контроллере, чтобы получить объект пользователя.
также я пытался сделать что-то подобное в конструкторе контроллера: $this->user = JWTAuth::toUser(JWTAuth::getToken())
, но конструктор контроллера выполняется до промежуточного программного обеспечения, так что это было проблематично.так что дайте мне ваши идеи и советы, если прохождение модели пользователя является хорошей идеей или нет.