Les Gophers Volants sont une coopérative de coursiers à vélo, à Lyon. Margot, qui l'a fondée, en a assez du tableau blanc couvert de flèches et des textos qui se perdent. Elle veut une API pour l'application des coursiers, et elle a choisi Goravel, un framework Go qui ressemble beaucoup à Laravel. Le projet est déjà créé, et il tourne ici, dans votre navigateur.
Avant tout, l'application des coursiers doit savoir si le serveur est en route.
Votre mission
- Ouvrez
routes/web.go: c'est l'équivalent deroutes/web.phpdans Laravel. La fonctionWeb()déclare les routes ; il y en a déjà deux : la page d'accueil et/bonjour/{nom}. - Ajoutez une route
GET /ping, en vous inspirant de celle de/. - Elle répond un JSON :
{"statut": "en selle"}, avec le code 200.
L'aperçu affiche /ping à chaque modification, et l'onglet « Requêtes » envoie la requête pour vous. Quand c'est bon, lancez les tests.
Rappel
facades.Route().Get(chemin, action) est le Route::get() de Laravel. L'action est une fonction qui reçoit le contexte de la requête, ctx http.Context, et renvoie une http.Response. En Go, le type d'une variable s'écrit après son nom : ctx http.Context se lit « ctx, de type http.Context ».
ctx.Response() construit la réponse : .Success() met le code 200, .Json(…) écrit le corps en JSON. http.Json est une simple map, l'équivalent du tableau associatif qu'on passerait à response()->json().