Cloud Endpoints Frameworks

Cloud Endpoints Frameworks は、App Engine の標準の Python 2.7 ランタイム環境と Java 8 ランタイム環境に対応するウェブ フレームワークです。Cloud Endpoints Frameworks には、アプリケーション用の REST API とクライアント ライブラリを生成するためのツールとライブラリが用意されています。

他のウェブ フレームワークと同様に、Endpoints Frameworks では、アプリケーションの HTTP リクエストとレスポンスの低レベルの通信詳細を処理します。クライアントが API にリクエストを送信すると、Endpoints Frameworks はリクエストの URL を、リクエストを処理するコード内の関数またはメソッドにルーティングします。Endpoints Frameworks は戻り値を JSON に変換してレスポンスを送信します。(Java のアノテーションと Python のデコレータを使用して)メタデータをソースコードに追加します。メタデータはアプリケーションの REST API のサーフェスを定義します。

Java

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

このコード例では、アノテーションは「@」文字で始まります。

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)

このコード例では、デコレータは「@」文字で始まります。

Endpoints Frameworks では、アプリケーションに Apache Tomcat や Gunicorn などのサードパーティ ウェブサーバーをデプロイする必要はありません。App Engine スタンダード環境で通常行うのと同じように、コードにアノテーションを付けるかコードをデコレートして、アプリケーションをデプロイします。

API 管理

Extensible Service Proxy(ESP)により、Endpoints for OpenAPI と Endpoints for gRPC の API 管理機能が提供されます。ESP はバックエンドの各インスタンスとともに、コンテナ内で稼働します。

Endpoints Frameworks の開発中、App Engine スタンダード環境ではマルチコンテナのデプロイがサポートされていなかったため、Endpoints Frameworks では ESP は使用されません。その代わりに、Endpoints Frameworks には組み込みの API ゲートウェイが含まれています。ESP が Endpoints for OpenAPI と Endpoints for gRPC 向けに提供している機能に相当する API 管理機能が、この API ゲートウェイによって提供されます。

Endpoints Frameworks はすべてのリクエストを傍受し、API バックエンドにリクエストを転送する前に必要なチェック(認証など)を行います。バックエンドが応答すると、Endpoints Frameworks はテレメトリーを収集して報告します。API の指標は、GCP Console の Endpoints の [サービス] ページで確認できます。

Endpoints Frameworks は、API 管理機能の有無に関係なく使用できます。API 管理機能なしの Endpoints Frameworks は、無料で使用できます。API 管理機能は、Endpoints 料金ページに従って課金されます。

制限事項

  • Endpoints Frameworks は、App Engine の標準の Python 2.7 ランタイム環境と Java 8 ランタイム環境でのみサポートされています。
  • Endpoints Frameworks では、App Engine スタンダード環境の Node.js、PHP、Go ランタイム環境をサポートしていません。
  • Endpoints Frameworks では、App Engine フレキシブル環境をサポートしていません。
  • Endpoints Frameworks では、Cloud Functions、Compute Engine、Google Kubernetes Engine をサポートしていません。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

App Engine 用 Cloud Endpoints Frameworks
ご不明な点がありましたら、Google のサポートページをご覧ください。