Sfoglia il codice sorgente

IRI User login

master
Daniel 2 anni fa
parent
commit
3bd97bb65f
2 ha cambiato i file con 12 aggiunte e 5 eliminazioni
  1. +1
    -1
      config/services.yaml
  2. +11
    -4
      src/EventListener/AuthenticationSuccessListener.php

+ 1
- 1
config/services.yaml Vedi File

@@ -27,4 +27,4 @@ services:
class: App\EventListener\AuthenticationSuccessListener class: App\EventListener\AuthenticationSuccessListener
tags: tags:
- { name: kernel.event_listener, event: lexik_jwt_authentication.on_authentication_success, method: onAuthenticationSuccessResponse } - { name: kernel.event_listener, event: lexik_jwt_authentication.on_authentication_success, method: onAuthenticationSuccessResponse }
arguments: ['@api_platform.iri_converter']
arguments: ['@symfonycasts.micro_mapper', '@api_platform.iri_converter']

+ 11
- 4
src/EventListener/AuthenticationSuccessListener.php Vedi File

@@ -9,12 +9,17 @@ namespace App\EventListener;




use ApiPlatform\Api\IriConverterInterface; use ApiPlatform\Api\IriConverterInterface;
use App\ApiResource\UserApi;
use App\Entity\User; use App\Entity\User;
use Lexik\Bundle\JWTAuthenticationBundle\Event\AuthenticationSuccessEvent; use Lexik\Bundle\JWTAuthenticationBundle\Event\AuthenticationSuccessEvent;
use Symfonycasts\MicroMapper\MicroMapperInterface;


class AuthenticationSuccessListener class AuthenticationSuccessListener
{ {
public function __construct(private IriConverterInterface $iriConverter)
public function __construct(
private MicroMapperInterface $microMapper,
private IriConverterInterface $iriConverter
)
{ {
} }


@@ -32,13 +37,15 @@ class AuthenticationSuccessListener
return; return;
} }


$data['id'] = $user->getId();
//$data['id'] = $this->iriConverter->getIriFromResource($user);
$userApi = $this->microMapper->map($user, UserApi::class, [
MicroMapperInterface::MAX_DEPTH => 3,
]);

$data['id'] = $this->iriConverter->getIriFromResource($userApi);
$data['email'] = $user->getEmail(); $data['email'] = $user->getEmail();
$data['firstName'] = $user->getFirstName(); $data['firstName'] = $user->getFirstName();
$data['lastName'] = $user->getLastName(); $data['lastName'] = $user->getLastName();
$data['roles'] = $user->getRoles(); $data['roles'] = $user->getRoles();

$event->setData($data); $event->setData($data);
} }
} }

Caricamento…
Annulla
Salva