In jedem Startup ist die Verwaltung von APIs über mehrere Dienste hinweg eine häufige Herausforderung.
Wir standen vor drei Hauptproblemen:
Jedes davon hatte seine eigenen Fragen: wie man es macht, wo man es macht, welche Tools man verwendet und wer die Verantwortung übernimmt.
Um dieses Problem anzugehen, hat unser Team beschlossen, alle APIs in einem einzigen Repository namens APIHub zu konsolidieren. Die APIs jedes Dienstes wurden in einem einfachen und konsistenten Format gespeichert:
GET | POST | PUT | DELETE | PATCH ${baseurl}/endpoint { "body": "if present" }
Wir haben die Dateien entsprechend ihrer Funktion benannt. Unten sehen Sie ein Beispiel einer .l2-Datei für eine „Leave Apply“-API, zusammen mit einer Seitenleiste, die andere APIs im Repository anzeigt:
Wir haben es zur Pflicht gemacht, die entsprechende .l2-Datei in jede Pull-/Merge-Anfrage einzubinden. Wäre dies nicht der Fall, würde der Antrag nicht genehmigt werden. Diese einfache Regel erhöhte die Konsistenz der API-Dokumentation im gesamten Team.
Wir erkannten schnell, dass das manuelle Testen von APIs durch das Kopieren von URLs und Payloads in Tools wie Postman zeitaufwändig war. Also haben wir ein CLI-Tool namens Lama2 erstellt.
Lama2 ist ein Klartext-API-Manager, der für die Git-basierte Zusammenarbeit optimiert ist.
Mit Lama2 könnten Sie eine .l2-Datei als Eingabe übergeben, und die CLI würde die API ausführen und die Antwort im Terminal anzeigen:
Das erspart uns das ständige Kopieren und Einfügen, aber das Wechseln der Verzeichnisse, um .l2-Dateien zu finden, war immer noch mühsam:
lovestaco@i3nux:~/apihub/feedback/fb_v3/leave$ l2 apply_leave.l2
Um die Dinge weiter zu optimieren, haben wir eine VSCode-Erweiterung entwickelt. Es verfügte über Funktionen, die unseren Arbeitsablauf noch reibungsloser machten:
Diese Erweiterung wurde schnell zu einem Favoriten im Team und wir beschlossen, sie auf GitHub zu veröffentlichen, damit auch andere davon profitieren können.
Als unsere APIs wuchsen, fragten wir uns:
Und hier beginnt das nächste Kapitel unserer Reise...
Folgen Sie mir, um in meinem nächsten Beitrag zu erfahren, was als nächstes passiert.
Das obige ist der detaillierte Inhalt vonWie sich ein Hobby-API-Erfassungs- und Ausführungstool zu einem Produkt entwickelt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!