Cloud Endpoints Frameworks

Cloud Endpoints Frameworks ist ein Web-Framework für die Python 2.7- und Java 8-Laufzeiten der App Engine-Standardumgebung. Cloud Endpoints Frameworks bietet die Tools und Bibliotheken, mit denen Sie REST APIs und Clientbibliotheken für Ihre Anwendung generieren können.

Endpoints Frameworks verarbeitet ebenso wie andere Web-Frameworks die Low-Level-Kommunikationsdetails von HTTP-Anfragen und -Antworten für Ihre Anwendung. Wenn ein Client eine Anfrage an Ihre API sendet, leitet Endpoints Frameworks die URL der Anfrage an die Funktion oder Methode in Ihrem Code weiter, von der die Anfrage verarbeitet wird. Endpoints Frameworks konvertiert den Rückgabewert in das JSON-Format und sendet die Antwort. Metadaten fügen Sie Ihrem Quellcode in Java mit Anmerkungen und in Python mit Decorators hinzu. Die Metadaten definieren die Oberfläche der REST APIs für Ihre Anwendung.

Java

@ApiMethod(name = "echo")
public Message echo(Message message, @Named("n") @Nullable Integer n) {
  return doEcho(message, n);
}

Die Annotationselemente im Beispielcode beginnen mit dem Zeichen @.

Python

@endpoints.method(
    # This method takes a ResourceContainer defined above.
    ECHO_RESOURCE,
    # This method returns an Echo message.
    EchoResponse,
    path="echo",
    http_method="POST",
    name="echo",
)
def echo(self, request):
    output_message = " ".join([request.message] * request.n)
    return EchoResponse(message=output_message)

Die Decorator-Elemente im Beispielcode beginnen mit dem Zeichen @.

Wenn Sie Endpoints Frameworks verwenden, brauchen Sie für Ihre Anwendung keinen Webserver eines Drittanbieters wie Apache Tomcat oder Gunicorn bereitzustellen. Sie annotieren oder dekorieren den Code und stellen die Anwendung so bereit, wie sie es auch in der App Engine-Standardumgebung tun würden.

API-Verwaltung

Der Extensible Service Proxy (ESP) bietet API-Verwaltungsfeatures für Endpoints für OpenAPI und Endpoints für gRPC. Er wird zusammen mit den Instanzen Ihres Back-Ends in einem Container ausgeführt.

Da die App Engine-Standardumgebung in der Entwicklungsphase von Endpoints Frameworks keine Bereitstellungen für mehrere Container unterstützt hat, wird der ESP von Endpoints Frameworks nicht verwendet. Endpoints Frameworks enthält stattdessen ein integriertes API-Gateway mit API-Verwaltungsfeatures, die mit den Features vergleichbar sind, die der ESP für Endpoints für OpenAPI und Endpoints für gRPC bereitstellt.

Endpoints Frameworks fängt alle Anforderungen ab und führt alle erforderlichen Prüfungen durch, z. B. eine Authentifizierung, bevor die Anfrage an die Back-End API weitergeleitet wird. Wenn das Back-End antwortet, erfasst und meldet Endpoints Frameworks telemetrische Messwerte. Messwerte für Ihre API können Sie in der Google Cloud Console auf der Seite Cloud Endpoints-Dienste ansehen.

Sie können Endpoints Frameworks mit oder ohne API-Verwaltungsfunktionen verwenden. Die Verwendung von Endpoints Frameworks ohne API-Verwaltungsfunktionen ist kostenlos. Die Gebühren für API-Verwaltungsfunktionen finden Sie auf der Seite mit den Cloud Endpoints-Preisen.

Beschränkungen

  • Endpoints Frameworks wird nur in den Python 2.7- und Java 8-Laufzeiten der App Engine-Standardumgebung unterstützt.
  • Endpoints Frameworks bietet keine Unterstützung für die Node.js-, PHP- und Go-Laufzeiten in der App Engine-Standardumgebung.
  • Endpoints Frameworks bietet keine Unterstützung für die flexible Umgebung von App Engine.
  • Endpoints Frameworks bietet keine Unterstützung für Cloud Functions, Compute Engine und Google Kubernetes Engine.

Nächste Schritte