You have requested a non-existent service “security.context”

爱⌒轻易说出口 提交于 2019-11-28 05:52:25

The security.context service was deprecated in the 2.6 and split into two new services: security.authorization_checker and security.token_storage.

Some different usage from the prior version of the framework:

// Symfony 2.5
$user = $this->get('security.context')->getToken()->getUser();
// Symfony 2.6
$user = $this->get('security.token_storage')->getToken()->getUser();

// Symfony 2.5
if (false === $this->get('security.context')->isGranted('ROLE_ADMIN')) { ... }
// Symfony 2.6
if (false === $this->get('security.authorization_checker')->isGranted('ROLE_ADMIN')) { ... }

More info in this announcement

Hope this help

Charles Fournier

Following example will work:

/*Symfony 4.1.3*/

$user = $this->get('security.token_storage')->getToken()->getUser();

echo $user->getId(); // USER ID SESSION
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!