0

我设置了一个symfony/skeleton包含用户实体和身份验证的简单应用程序。当身份验证成功后,我调用包含以下代码的路由:

public function index(Security $security)
{
   $username = $security->getUser()->getUsername();

这会导致错误:

Call to a member function getUsername() on null

所以很明显,安全组件现在与当前登录的用户无关。然而,该会话确实包含当前的 UsernamePasswordToken(我使用转储进行了检查)。

当我使用website-skeleton. 骨架中缺少什么?

我的防火墙是这样设置的:

firewalls:
    dev:
        pattern: ^/(_(profiler|wdt)|css|images|js)/
        security: false
    main:
        anonymous: true
        logout:
            path: ^/user/logout
        json_login:
            check_path: /user/login
4

1 回答 1

0

AbstractController您可以从仅通过使用扩展的控制器获取经过身份验证的用户$this->getUser();

于 2019-02-20T09:15:40.237 回答