


Wie sich ein Hobby-API-Erfassungs- und Ausführungstool zu einem Produkt entwickelt
In jedem Startup ist die Verwaltung von APIs über mehrere Dienste hinweg eine häufige Herausforderung.
Wir standen vor drei Hauptproblemen:
- APIs dokumentieren
- Veröffentlichung der Dokumentation
- Aktualisierung, wann immer sich APIs ändern
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:
Verbesserung der Dokumentationspraktiken
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.
Von der Dokumentation bis zur Ausführung
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
Bringen Sie es zu VSCode
Um die Dinge weiter zu optimieren, haben wir eine VSCode-Erweiterung entwickelt. Es verfügte über Funktionen, die unseren Arbeitsablauf noch reibungsloser machten:
- Führen Sie .l2-Dateien direkt im Editor aus
- Kopieren Sie die Git-URL der Datei, um sie einfacher weiterzugeben
- JSON-Nutzdaten verschönern
- Generieren Sie Codeausschnitte für jede Sprache aus der .l2-Syntax
- Erstellen Sie in Sekundenschnelle Vorlagen für neue APIs
- Automatische Vervollständigung von Variablen mithilfe von LSP
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.
Das nächste Problem: Skalierung der Dokumentation
Als unsere APIs wuchsen, fragten wir uns:
- Warum APIs für jeden Dienst manuell dokumentieren?
- Ist es nicht zeitaufwändig, die Dokumentation für jede Änderung zu aktualisieren?
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!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Häufig gestellte Fragen und Lösungen für das Ticket-Ticket-Ticket-Ticket in Front-End im Front-End-Entwicklungsdruck ist der Ticketdruck eine häufige Voraussetzung. Viele Entwickler implementieren jedoch ...

JavaScript ist der Eckpfeiler der modernen Webentwicklung. Zu den Hauptfunktionen gehören eine ereignisorientierte Programmierung, die Erzeugung der dynamischen Inhalte und die asynchrone Programmierung. 1) Ereignisgesteuerte Programmierung ermöglicht es Webseiten, sich dynamisch entsprechend den Benutzeroperationen zu ändern. 2) Die dynamische Inhaltsgenerierung ermöglicht die Anpassung der Seiteninhalte gemäß den Bedingungen. 3) Asynchrone Programmierung stellt sicher, dass die Benutzeroberfläche nicht blockiert ist. JavaScript wird häufig in der Webinteraktion, der einseitigen Anwendung und der serverseitigen Entwicklung verwendet, wodurch die Flexibilität der Benutzererfahrung und die plattformübergreifende Entwicklung erheblich verbessert wird.

Es gibt kein absolutes Gehalt für Python- und JavaScript -Entwickler, je nach Fähigkeiten und Branchenbedürfnissen. 1. Python kann mehr in Datenwissenschaft und maschinellem Lernen bezahlt werden. 2. JavaScript hat eine große Nachfrage in der Entwicklung von Front-End- und Full-Stack-Entwicklung, und sein Gehalt ist auch beträchtlich. 3. Einflussfaktoren umfassen Erfahrung, geografische Standort, Unternehmensgröße und spezifische Fähigkeiten.

JavaScript zu lernen ist nicht schwierig, aber es ist schwierig. 1) Verstehen Sie grundlegende Konzepte wie Variablen, Datentypen, Funktionen usw. 2) Beherrschen Sie die asynchrone Programmierung und implementieren Sie sie durch Ereignisschleifen. 3) Verwenden Sie DOM -Operationen und versprechen Sie, asynchrone Anfragen zu bearbeiten. 4) Vermeiden Sie häufige Fehler und verwenden Sie Debugging -Techniken. 5) Die Leistung optimieren und Best Practices befolgen.

Diskussion über die Realisierung von Parallaxe -Scrolling- und Elementanimationseffekten in diesem Artikel wird untersuchen, wie die offizielle Website der Shiseeido -Website (https://www.shiseeido.co.jp/sb/wonderland/) ähnlich ist ...

Zu den neuesten Trends im JavaScript gehören der Aufstieg von Typenkripten, die Popularität moderner Frameworks und Bibliotheken und die Anwendung der WebAssembly. Zukunftsaussichten umfassen leistungsfähigere Typsysteme, die Entwicklung des serverseitigen JavaScript, die Erweiterung der künstlichen Intelligenz und des maschinellen Lernens sowie das Potenzial von IoT und Edge Computing.

Wie fusioniere ich Array -Elemente mit derselben ID in ein Objekt in JavaScript? Bei der Verarbeitung von Daten begegnen wir häufig die Notwendigkeit, dieselbe ID zu haben ...

Eingehende Diskussion der Ursachen des Unterschieds in der Konsole.log-Ausgabe. In diesem Artikel wird die Unterschiede in den Ausgabeergebnissen der Konsolenfunktion in einem Code analysiert und die Gründe dafür erläutert. � ...
