Différences
Ci-dessous, les différences entre deux révisions de la page.
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:47] thierry [Le controlleur] |
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]] | ||
+ | |||