Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
prog:symfony:applications:creer_api:creer_api [20/10/2019 16:48]
thierry ↷ Page déplacée de prog:symfony:creer_api à prog:symfony:creer_api:creer_api
prog:symfony:applications:creer_api:creer_api [11/09/2022 19:49] (Version actuelle)
thierry ↷ Page déplacée de prog:symfony:creer_api:creer_api à prog:symfony:applications:creer_api:creer_api
Ligne 2: Ligne 2:
 On part du principe que [[prog:​symfony:​installer_symfony|Symfony est installé]] On part du principe que [[prog:​symfony:​installer_symfony|Symfony est installé]]
  
-On [[prog:​symfony:​create_new_project|créé un projet ]]+On [[prog:​symfony:​projets:​create|créé un projet ]]
  
 ===== Le controlleur ===== ===== Le controlleur =====
Ligne 52: Ligne 52:
 } }
 </​code>​ </​code>​
 +==== Swagger ====
 +Dans le cadre de la programmation d'API au format OpenAPI, il sera utile [[prog:​theorie:​api:​swagger|d'​installer Swagger-php]] qui permet de générer de la documentation conforme OpenAPI grâce a des [[prog:​symfony:​annotations|Annotations]]
 +==== OpenAPI en Annotations ====
 +On modifie le code de notre controlleur avec les lignes ci-dessous :
 +<code php>
 +<?php
 +...
 +use OpenApi\Annotations as OA;
 +
 +class CheckVersionController
 +{
 +     /**
 +      * @Route("/​api/​checkv"​)
 +      * @OA\Get(
 +      *     ​path="/​checkv",​
 +      *     ​@OA\Response(
 +      *         ​response="​200",​
 +      *         ​description="​version courante",​
 +      *         ​@OA\JsonContent(
 +      *             ​type="​string",​
 +      *             ​description="​version"​
 +      *         ​) ​   ​
 +      *      )
 +      * )
 +      */
 +    public function check()
 +    {...}
 +}
 +</​code>​
 +
 +Puis on lance la commande ''​vendor\bin\openapi.bat --format json --output public\swagger\swagger.json swagger\swagger.php src''​ pour mettre a jour le fichier de description au format OpenAPI ''​public/​swagger/​swagger.json''​
 +<​code>​
 +D:​\webprojects\test-api-project>​vendor\bin\openapi.bat --format json --output public\swagger\swagger.json swagger\swagger.php src
 +</​code>​
 +
 +
 +
 +====== Ressources ======
 +  * [[https://​openclassrooms.com/​fr/​courses/​4087036-construisez-une-api-rest-avec-symfony]]
 +