我尝试在身份验证成功事件后保存用户gsm数据:
/**
* @param AuthenticationSuccessEvent $event
*/
public function onAuthenticationSuccessResponse(AuthenticationSuccessEvent $event)
{
$data = $event->getData();
$user = $event->getUser();
dd($user);
$gsm = isset(\json_decode($this->requestStack->getCurrentRequest()->getContent())->gsm) ? \json_decode($this->requestStack->getCurrentRequest()->getContent())->gsm : null;
if ($user->getGsm()) { // <------ get user GSM
...
} else {
...
}
$event->setData($data);
}
当我尝试生成令牌时,它可以正常工作:
但是当我尝试刷新令牌时我遇到了symfony错误:
Attempted to call an undefined method named "getGsm" of class "Symfony\Component\Security\Core\User\User".
dd($ user)的结果是:
[当您实际上试图保存GSM数据时,正在尝试在Symfony User类上调用getGsm方法。
确保您正在使用正确的用户,并且您将需要使用setGsm。