0
我有一个自定义UserProvider
和refreshUser
方法,我返回字符串anon.
登录用户。但是这样做会抛出异常Error: Call to a member function getUsername() on a non-object
,因为在ContextListener.php位于第164行,它正在访问字符串上的getusername
。错误:调用一个非对象的成员函数getUsername()
public function refreshUser(UserInterface $user)
{
if (!$user instanceof User) {
throw new UnsupportedUserException(sprintf(
'Instances of "%s" are not supported.',
get_class($user)
));
}
if ($this->request && !$this->request->cookies->has('lsm_token'))
{
$this->tokenStorage->setToken(null);
$this->request->getSession()->invalidate();
return 'anon.';
}
return $user;
}
是否有替代方案可以将用户注销?我能做些什么来防止这个异常被抛出?