問題タブ [endpoints-proto-datastore]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
264 参照

endpoints-proto-datastore - query_method で ComputedProperty をフィルタリングする方法は?

計算されたプロパティをクエリするにはどうすればよいですか?

この場合query、常にテストするフィルタがありますattr2 == False

原因は、フィルターが で作成されたエンティティから作成されているようFromMessageです。計算されたプロパティであるためattr2、設定できません。attr1デフォルトは 0 で、渡さattr2れる内容に関係なく常に False です。

0 投票する
7 に答える
12500 参照

python - 動的に作成されたメソッドとデコレーター、エラー「functools.partial」オブジェクトに属性「__module__」がありません

現在、EndpointsModel を使用して、AppEngine 上のすべてのモデル用の RESTful API を作成しています。RESTful であるため、これらの API には繰り返しのコードが多くあり、これを回避したいと考えています。

例えば:

それらをジェネリックにしたい。だから私はクラスにメソッドを動的に追加しようとします。私がこれまでに試したこと:

しかし、のデコレータとパーシャルの'functools.partial' object has no attribute '__module__' exception. 間にいくつかの競合があるためだと思います。endpoints.methodしかし、それを回避する方法がわかりません。

関連記事:

0 投票する
1 に答える
1419 参照

google-app-engine - AppEngine、Webapp2、および Cloud Endpoints Proto Datastore を使用した複数の認証プロバイダー

ユーザーがsimpleauthを使用して認証できるようにする webapp に取り組んでいます。今のところ、私は Google と Facebook をサポートします。ログインとログアウト (webapp2 を使用) 以外に、webapp は Cloud Endpoint API で構成されます。クライアントは、Web、Android、および iOS になります。

私の質問は、Endpoints Proto Datastore を使用して、ユーザーの認証プロバイダーが Facebook (または他のサポートされている OAuth2 プロバイダーのいずれか) である場合に、ユーザーを取得するためにuser_required=True呼び出すことができますか?代わりに、OAuth2 トークンを指定してプロバイダーから永続的なユーザー ID を取得し、それをデータストアに保持し、そのユーザー用に独自の認証トークンを生成し、そのトークンを各要求に渡す必要がありますか?endpoints.get_current_user()@Model.methoduser_required=True

編集:認証トークンを渡す代わりに、認証されたユーザーが API メソッドに渡すことができる「API トークン」を要求することは理にかなっていますか? このトークンは POST または GET 本文に含める必要がありますか、それともヘッダー/Cookie に入れることができますか (Cloud Endpoints のヘッダーと Cookie に関する SO の他の場所でいくつかの質問を見ましたが、それからしばらく経ちました)。これはすべて、Google 以外の認証が機能しないことを前提としています。

0 投票する
1 に答える
508 参照

google-app-engine - google appengine endpoint proto datastore simple get id example return not found

数日間、エンドポイント プロト データストアでの簡単な取得を試みています。

http://endpoints-proto-datastore.appspot.com/examples/simple_get.html

動作しますが、常に返されません。

これがID APIによる取得です。

https://pttbuying.appspot.com/_ah/api/pttbuying/v1/items/4504690549063680

これが私のモデルコードです。

これが私のAPIコードです

何か不足していますか?アドバイスをありがとう。

0 投票する
2 に答える
1182 参照

python - Google Cloud エンドポイントとサービス アカウントが :Oauth フレームワーク ユーザーが oauth トークン ユーザーと一致しませんでした

次のようなサービス アカウントを使用して、コマンドラインから Google クラウド エンドポイントにアクセスしようとしています。

https://code.google.com/p/google-api-python-client/source/browse/samples/service_account/tasks.py

例の指示に従って、clientid + pk12 証明書を作成し、それらを使用して oauth2client.client モジュールからの SignedJwtAsertionCredential 呼び出しで資格情報を作成しました。

ローカル devserver で実行されているクラウド エンドポイントを呼び出すと期待どおりに動作しますが、デプロイされた gae クラウド エンドポイントを呼び出すと、

Oauth フレームワーク ユーザーが oauth トークン ユーザーと一致しませんでした。

user_id_token._set_bearer_user_vars() からの oauth.get_client_id(scope) 呼び出しで失敗しているようです。

例外にトレースバックを追加したところ、_maybe_raise_exception から来ているようです

E 2014-01-02 10:30:53.926 発生 NotAllowedError (error_detail) E 2014-01-02 10:30:53.926 NotAllowedError

アプリの認証タイプを変更せずにこのエラーを解決する方法はありますか? ドメインの制限によりリクエストが許可されていないようですか?

私の目標は、ユーザーを関与させずにクラウドエンドポイントを呼び出すことです.SignedJwtAsertionCredential呼び出しを使用して正しいパスであるかどうか、または可能であれば?

追加情報。

エンドポイントの認証タイプが「Google App Domain」に設定されている

エンドポイント メソッドで user_required が True である

SignedJwtAssertCredential から生成されたアクセス トークンは、 https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=ya29を使用すると期待どおりです。

エンドポイントは、API エクスプローラーから期待どおりに機能し、認証フローが関係している場合に機能します。

endpoints_proto_datastore ライブラリの使用。

0 投票する
1 に答える
634 参照

google-cloud-endpoints - endpoints-proto-datastore を使用して、repeat=True の場合に ndb.KeyProperty を取得する方法

GAE バックエンド API が、各連絡先に対応する電子メールのコレクションを含む連絡先のリストを返すようにしたいと考えています。私はendpoints-proto-datastoreを使用しており、この質問のガイドラインに従ってこれを実装しました。

私の問題は、contacts_listメソッドが呼び出されると、次のようになることです。

Contact.email_keys が空 ([]) である可能性がありますが、この動作を制御する場所がわからないため、これが発生すると思います。

私のAPI実装の関連部分は次のとおりです。

0 投票する
1 に答える
281 参照

python-2.7 - endpoint-proto-datastore を使用してモデル以外のものを返す方法

Google Cloud Endpoints と endpoints-proto-datastore ライブラリを介して API をコーディングしています。

これが私のモデルです:

そして、これは私の削除方法です:

モデル自体以外のものを返すことはできますか? 特定の HTTP ステータス コードや VoidMessage などを返すにはどうすればよいですか?