Cloud Endpoints unterstützt APIs, die mit Version 2.0 der OpenAPI-Spezifikation beschrieben werden.
Sie können Ihre API mit einem öffentlich verfügbaren REST-Framework wie Django oder Jersey implementieren.
Sie beschreiben die API in einer JSON
- oder YAML
-Datei, die als OpenAPI-Dokument bezeichnet wird. Auf dieser Seite werden einige Vorteile von OpenAPI erläutert. Außerdem wird die Grundstruktur eines OpenAPI-Dokuments gezeigt und Sie erhalten zusätzliche Informationen für den Einstieg in OpenAPI.
Vorteile
Einer der Hauptvorteile von OpenAPI ist die Dokumentation. Sobald Sie über ein OpenAPI-Dokument verfügen, das Ihre API beschreibt, ist es einfach, eine Referenzdokumentation für diese zu erstellen. Weitere Informationen finden Sie im Cloud Endpoints-Portal.
Außerdem können Sie mit OpenAPI:
- Clientbibliotheken erstellen
- Server-Stubs erstellen
- Projekte nutzen, um die Konformität zu überprüfen und Beispiele zu generieren
Grundstruktur eines OpenAPI-Dokuments
Ein OpenAPI-Dokument beschreibt die Oberfläche Ihrer REST API und definiert folgende Daten:
- den Namen und die Beschreibung der API
- die individuellen Endpoints (Pfade) in der API
- die für Anrufer verwendete Authentifizierungsmethode
Sollten Sie mit OpenAPI noch nicht vertraut sein, werfen Sie einen Blick auf die Swagger-Website mit Grundstrukturen. Dort finden Sie ein OpenAPI-Beispieldokument (auch als Swagger-Spezifikation bezeichnet) und eine kurze Erläuterung der einzelnen Abschnitte der Datei. Das OpenAPI-Dokument aus der Cloud Endpoints-Kurzanleitung veranschaulicht diese Grundstruktur:
swagger: "2.0" info: title: "Airport Codes" description: "Get the name of an airport from its three-letter IATA code." version: "1.0.0" # This field will be replaced by the deploy_api.sh script. host: "YOUR-PROJECT-ID.appspot.com" schemes: - "https" paths: "/airportName": get: description: "Get the airport name for a given IATA code." operationId: "airportName" parameters: - name: iataCode in: query required: true type: string responses: 200: description: "Success." schema: type: string 400: description: "The IATA code is invalid or missing."
Zusätzlich zur Grundstruktur zeigt die Datei openapi.yaml
aus dem Beispielcode der Anleitungen folgende Informationen:
- Konfiguration eines Pfads für die Verwendung eines API-Schlüssels
- Verschiedene Sicherheitsschemas für die Authentifizierung
- OpenAPI-Erweiterungen, die für Cloud Endpoints APIs verfügbar sind
OpenAPI-Dokumente erstellen
Abhängig von der verwendeten Sprache können Sie ggf. ein OpenAPI-Dokument generieren. Java bietet Open-Source-Projekte für Jersey und Spring, mit denen OpenAPI-Dokumente aus Annotationen generiert werden können. Außerdem gibt es ein Maven-Plug-in. Das Projekt flask-swagger könnte für Python-Nutzer und das Projekt swagger-node-express für Node-Entwickler interessant sein.
Die OpenAPI-Community arbeitet kontinuierlich an der Entwicklung von Tools, die Unterstützung beim Erstellen von OpenAPI-Dokumenten bieten (und diese in einigen Sprachen sogar automatisch generieren). Die vollständige Liste aller Tools und Integrationen finden Sie auf der Swagger-Website.
Weitere Informationen
- OpenAPI-Erweiterungen
- Nicht unterstützte OpenAPI-Funktionen
- Endpoints konfigurieren
- API-Konfiguration bereitstellen