src/EventListener/JWTCreatedListener.php line 24

Open in your IDE?
  1. <?php
  2. // src/App/EventListener/JWTCreatedListener.php
  3. namespace App\EventListener;
  4. use Lexik\Bundle\JWTAuthenticationBundle\Event\JWTCreatedEvent;
  5. use Symfony\Component\Security\Core\Security;
  6. class JWTCreatedListener{
  7.     
  8.     private $security;
  9.     public function __construct(Security $security)
  10.     {
  11.         $this->security $security;
  12.     }
  13.     /**
  14.      * @param JWTCreatedEvent $event
  15.      *
  16.      * @return void
  17.      */
  18.     public function onJWTCreated(JWTCreatedEvent $event)
  19.     {
  20.         
  21.         $payload $event->getData();
  22.         $user $this->security->getUser();
  23.         $payload['ulid'] = $user->getUlid();
  24.         $event->setData($payload);
  25.         
  26.         $header        $event->getHeader();
  27.         $header['cty'] = 'JWT';
  28.         $event->setHeader($header);
  29.     }
  30. }