feat(api): Affiche un formulaire de citation dans l'API publique
Ce commit introduit un formulaire de citation simple dans l'API publique et améliore la cohérence du type de contenu. Modifications: * Ajout d'une constante `CONTENT_TYPE` dans `RootController` pour définir le type de contenu `text/html`. * Mise à jour de la documentation OpenAPI pour utiliser la constante `CONTENT_TYPE`. * Implémentation d'une réponse HTML basique dans la méthode `quote` de `RootController`. * Exclusion du répertoire `src/Controller` du coverage dans `phpunit.dist.xml` (probablement pour éviter de tester les contrôleurs qui servent uniquement l'API).
This commit is contained in:
@@ -42,8 +42,8 @@
|
||||
<directory>src</directory>
|
||||
</include>
|
||||
<exclude>
|
||||
<directory>src/Controller</directory>
|
||||
<directory>src/Command</directory>
|
||||
<directory>src/Controller</directory>
|
||||
<directory>src/Service</directory>
|
||||
</exclude>
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ use Symfony\Component\Routing\Attribute\Route;
|
||||
|
||||
class RootController extends AbstractController
|
||||
{
|
||||
const CONTENT_TYPE="text/html";
|
||||
#[Route('/api/public', name: 'api_public', methods: ['GET'])]
|
||||
#[OA\Get(
|
||||
path: '/api/public',
|
||||
@@ -51,7 +52,7 @@ class RootController extends AbstractController
|
||||
description: 'Accepted response content type',
|
||||
in: 'header',
|
||||
required: true,
|
||||
schema: new OA\Schema(type: 'string', enum: ['text/html'])
|
||||
schema: new OA\Schema(type: 'string', enum: [self::CONTENT_TYPE])
|
||||
)
|
||||
],
|
||||
responses: [
|
||||
@@ -59,7 +60,7 @@ class RootController extends AbstractController
|
||||
response: 200,
|
||||
description: 'Form for api quote',
|
||||
content: new OA\MediaType(
|
||||
mediaType: 'text/html',
|
||||
mediaType: self::CONTENT_TYPE,
|
||||
)
|
||||
)
|
||||
]
|
||||
@@ -67,6 +68,8 @@ class RootController extends AbstractController
|
||||
#[Security(name: '')]
|
||||
public function quote(): Response
|
||||
{
|
||||
return new JsonResponse([]);
|
||||
$html = '<html><body><h1>Public API Quote Form</h1></body></html>';
|
||||
|
||||
return new Response($html, 200, ['Content-Type' => 'text/html']);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user