Maison > interface Web > js tutoriel > Comment un outil de collecte et d'exécution d'API Hobby évolue vers un produit

Comment un outil de collecte et d'exécution d'API Hobby évolue vers un produit

Patricia Arquette
Libérer: 2025-01-01 03:56:10
original
661 Les gens l'ont consulté

Dans toute startup, la gestion des API sur plusieurs services est un défi courant.

Nous avons été confrontés à trois problèmes principaux :

  1. Documentation des API
  2. Publication de la documentation
  3. Le mettre à jour chaque fois que les API changent

Chacune d'entre elles avait sa propre série de questions : comment le faire, où le faire, quels outils utiliser et qui en prendrait possession.

Pour résoudre ce problème, notre équipe a décidé de consolider toutes les API dans un seul référentiel appelé APIHub. Les API de chaque service ont été stockées dans un format simple et cohérent :

GET | POST | PUT | DELETE | PATCH  
${baseurl}/endpoint  
{  
  "body": "if present"  
}
Copier après la connexion

Nous avons nommé les fichiers en fonction de leur fonction. Vous trouverez ci-dessous un exemple de fichier .l2 pour une API « Leave Apply », ainsi qu'une barre latérale affichant les autres API du référentiel :

How a Hobby API Collection and Execution Tool is Evolving into a Product

Améliorer les pratiques de documentation

Nous avons rendu obligatoire l'inclusion du fichier .l2 correspondant dans chaque demande de pull/fusion. Si ce n’était pas le cas, la demande ne serait pas approuvée. Cette règle simple a accru la cohérence de la documentation de l'API au sein de l'équipe.

How a Hobby API Collection and Execution Tool is Evolving into a Product

De la documentation à l'exécution

Nous avons vite réalisé que tester manuellement les API en copiant les URL et les charges utiles vers des outils comme Postman prenait beaucoup de temps. Nous avons donc construit un outil CLI appelé Lama2.

Lama2 est un gestionnaire d'API en texte brut optimisé pour la collaboration basée sur Git.

Avec Lama2, vous pouvez transmettre un fichier .l2 en entrée, et la CLI exécuterait l'API et afficherait la réponse dans le terminal :

How a Hobby API Collection and Execution Tool is Evolving into a Product

Cela nous a évité un copier-coller constant, mais changer de répertoire pour trouver les fichiers .l2 était toujours fastidieux :

lovestaco@i3nux:~/apihub/feedback/fb_v3/leave$ l2 apply_leave.l2  
Copier après la connexion

L'amener à VSCode

How a Hobby API Collection and Execution Tool is Evolving into a Product

Pour rationaliser davantage les choses, nous avons développé une extension VSCode. Il était doté de fonctionnalités qui rendaient notre flux de travail encore plus fluide :

  1. Exécuter les fichiers .l2 directement dans l'éditeur
  2. Copiez l'URL Git du fichier pour un partage facile
  3. Jolir les charges utiles JSON
  4. Générez des extraits de code pour n'importe quel langage à partir de la syntaxe .l2
  5. Créez des modèles pour de nouvelles API en quelques secondes
  6. Auto-complétion des variables à l'aide de LSP

How a Hobby API Collection and Execution Tool is Evolving into a Product

Cette extension est rapidement devenue l'une des préférées de l'équipe, et nous avons décidé de la publier sur GitHub pour que d'autres puissent également en bénéficier.

Le prochain problème : faire évoluer la documentation

Au fur et à mesure que nos API se développaient, nous nous sommes demandé :

  • Pourquoi documenter manuellement les API pour chaque service ?
  • N'est-il pas fastidieux de mettre à jour la documentation pour chaque modification ?

Et c’est là que commence le prochain chapitre de notre voyage...
Suivez-moi pour savoir ce qui se passera ensuite dans mon prochain article.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal