2

我的请求通过 aApiUserAuthenticator extends AbstractGuardAuthenticator来验证对 API 的请求。在 getUser() 方法中,我返回一个 ApiUser。

    public function getUser($credentials, UserProviderInterface $userProvider)
    {
        return new ApiUser('jean', ['ROLE_API_USER'], 'jean@bonnaud.fr');
    }

它运行良好,因为用户在我的控制器中出现得更远一些。

    /**
     * @Route("/", name="API_INDEX")
     */
    public function index()
    {
        dump($this->getUser());
        return $this->json([
            'status' => true,
        ]);
    }

但是一个小细节是错误的,用户名不见了!它返回空值。

转储内容

当然,在简单的 ApiUser 中,构造函数和 getter 都可以。
当您寄回一个Security\Core\User物体时,这种奇怪的现象就会消失!有趣不是吗?

    public function getUser($credentials, UserProviderInterface $userProvider)
    {
        return new \Symfony\Component\Security\Core\User\User('nicolas','0000',['ROLE_API_USER']);
    }

转储内容

4

0 回答 0