Bläddra i källkod

IRI User login

master
Daniel 2 år sedan
förälder
incheckning
3bd97bb65f
2 ändrade filer med 12 tillägg och 5 borttagningar
  1. +1
    -1
      config/services.yaml
  2. +11
    -4
      src/EventListener/AuthenticationSuccessListener.php

+ 1
- 1
config/services.yaml Visa fil

@@ -27,4 +27,4 @@ services:
class: App\EventListener\AuthenticationSuccessListener
tags:
- { 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 Visa fil

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


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

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

@@ -32,13 +37,15 @@ class AuthenticationSuccessListener
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['firstName'] = $user->getFirstName();
$data['lastName'] = $user->getLastName();
$data['roles'] = $user->getRoles();

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

Laddar…
Avbryt
Spara