Cliente SDK PHP

El apartado actual detalla el cliente SDK PHP de Jotelulu para el acceso simplificado al API Pública de Jotelulu.

Instalación del Bundle en proyecto PHP Symfony

  1. Crear un nuevo proyecto de Symfony con Symfony CLI:
symfony new example\_project --webapp --version=6.4 --no-git
  1. Modificar composer.json y añadir:
"repositories": [
   {
       "type": "path",
       "url": "../example-bundle"
   }
]
  1. Ejecutar el comando para instalarlo:
composer require vendor/example-bundle
  1. En el caso de requerir instalar la receta, se puede añadir manualmente en config/bundles.php
return \[\
Vendor\ExampleBundle\ExampleBundle::class => \['all' => true],
];

Autentificación con JWT

La autenticación del cliente con JWT puede realizarse con Jane PHP.

  1. Configurar openapi.yaml con security scheme:
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
  1. Ejemplo de cliente autenticado

Symfony\Contracts\HttpClient\HttpClientInterface

<?php
  private function createClient(): Client
  {
    $authentication = new BearerAuthAuthentication(self::TOKEN);
    return Client::create(
      (new Psr18Client($this->httpClientInterface))
         ->withOptions([
              'base_uri' => self::BASE_URI,
              'headers' => [
              'Authorization' => 'Bearer ' . self::TOKEN
            ]
         ]),
      [$authentication]
    );
  }