ホームページ  >  記事  >  バックエンド開発  >  ここでは、「質問」形式に焦点を当て、中心的な問題に対処するタイトルのオプションをいくつか示します。 **直接的かつ簡潔:** * **l の GCE インスタンスから AppEngine Datastore に接続できますか?

ここでは、「質問」形式に焦点を当て、中心的な問題に対処するタイトルのオプションをいくつか示します。 **直接的かつ簡潔:** * **l の GCE インスタンスから AppEngine Datastore に接続できますか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-24 18:44:10432ブラウズ

Here are a few title options, focusing on the

Cloud Datastore API 経由で開発中の AppEngine Datastore に接続する

はじめに

この質問では、次のことについて説明しますローカル開発環境で Cloud Datastore API を使用して GCE インスタンスから AppEngine データストアに接続できるかどうか。次のセットアップが提供されます:

  • データストアが埋め込まれた実行中の Go devappserver
  • データストア クエリを作成するための Go スタンドアロン バイナリ
  • Google-api-go-client/ API ベースのデータストア アクセス用の datastore/v1beta2

現在の制限

残念ながら、これは現在、次の 2 つの理由により開発環境では不可能です。

  1. 異なる開発サーバー:
    Google Cloud Datastore ツール (gcd.sh) は Java 開発サーバーを使用しますが、AppEngine は基盤となるストレージ メカニズムが異なる Python 開発サーバーを使用します。
  2. Go クライアント ライブラリの問題:
    Cloud Datastore の現在の Go クライアント ライブラリには安定性の問題があり、開発サーバーはライブラリで使用される JSON API をサポートしていません。

回避策

Cloud Datastore API のプロトコル バージョンを使用する (推奨)

Go クライアント ライブラリに依存する代わりに、 proppy の提案に従って API のプロトコル バージョンを使用できます:

  • Go protobuf コンパイラ プラグインを使用して protobuf 定義を Go コードにコンパイルします。
  • POST HTTP リクエストを /datastore に送信します。 /{version}/datasets/{datasetId}/{method} と適切なリクエスト本文。

この回避策により、Go クライアントよりも安定した Cloud Datastore Protobuf HTTP API を使用できるようになります。図書館。開発サーバーの gcd.sh ツールを使用したテストも可能になりますが、HTTP リクエストを自分で作成する必要があります。このアプローチでは、アプリケーションと開発中の Cloud Datastore の間でデータストア データを共有することはできないことに注意してください。

ダイレクト HTTP リクエストを作成

API ライブラリが開発と互換性がない場合は、データストアに対して直接 HTTP 呼び出しを発行することを検討できます。このアプローチでは、リクエストの構築と JSON 解析を手動で処理する必要がありますが、他の方法が実行できない場合には実行可能なオプションとなる可能性があります。

以上がここでは、「質問」形式に焦点を当て、中心的な問題に対処するタイトルのオプションをいくつか示します。 **直接的かつ簡潔:** * **l の GCE インスタンスから AppEngine Datastore に接続できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。