Używałem wcześniej kernel.controler ale odniosłem mylne wrażenie może dlatego że sugerowałem się dumpem, a używam debugbara i on coś psuje zwracając pusty token.
Teraz działa idealnie oto kod:
<?php
namespace App\EventSubscriber;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Symfony\Component\HttpKernel\Event\FilterControllerEvent;
use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterfa
ce;
class UserSubscriber implements EventSubscriberInterface
{
public function __construct(TokenStorageInterface $tokenStorage)
{
$this->tokenStorage = $tokenStorage;
}
public function onKernelController(FilterControllerEvent $event)
{
if (!empty($this->tokenStorage)) { if (!empty($this->tokenStorage->getToken())) { $user = $this->tokenStorage->getToken()->getUser();
dump($user);
}
}
}
public static function getSubscribedEvents
() {
return [
'kernel.controller' => ['onKernelController', 1],
];
}
}
dzięki
PS. 7 linijka jest prawidłowa tylko forum ją psuje, nie pomaga edycja, w niej jest OK a po zapisie znowu przenosi te 3 znaki do nowej linii