作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 LexikJWTAuthenticationBundle、FOSRest、FOSUser 如何通过 token 获取经过身份验证的用户配置文件。可能吗?
假设用户已经通过 LexikJWT 进行了身份验证,并且我有一个类似 /api/profile
的 api 端点,我在其中发送 token 并希望获得指定的用户数据。
我正在使用带有 Redux 的前端 ReactJS。
最佳答案
这是一个示例,说明当用户已经通过身份验证时如何通过服务获取用户:
class UserService
{
/** @var TokenStorageInterface */
private $tokenStorage;
/**
* @param TokenStorageInterface $storage
*/
public function __construct(
TokenStorageInterface $storage,
)
{
$this->tokenStorage = $storage;
}
public function getCurrentUser()
{
$token = $this->tokenStorage->getToken();
if ($token instanceof TokenInterface) {
/** @var User $user */
$user = $token->getUser();
return $user;
} else {
return null;
}
}
}
在你的 services.yml
中:
tenant_user_service:
class: YourBundle\YourPackage\UserService
arguments: [ '@security.token_storage' ]
这将返回您的用户 - 但请注意,根据身份验证期间用户如何设置 token ,这也可能只是您的用户名作为字符串。但基本上您可以从当前的 $token->getUser() 中获取任何内容。
关于symfony - LexikJWT 通过 token 获取用户个人资料,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42192877/
使用 LexikJWTAuthenticationBundle、FOSRest、FOSUser 如何通过 token 获取经过身份验证的用户配置文件。可能吗? 假设用户已经通过 LexikJWT 进行
我是一名优秀的程序员,十分优秀!