問題タブ [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.
endpoints-proto-datastore - query_method で ComputedProperty をフィルタリングする方法は?
計算されたプロパティをクエリするにはどうすればよいですか?
この場合query
、常にテストするフィルタがありますattr2 == False
。
原因は、フィルターが で作成されたエンティティから作成されているようFromMessage
です。計算されたプロパティであるためattr2
、設定できません。attr1
デフォルトは 0 で、渡さattr2
れる内容に関係なく常に False です。
python - 動的に作成されたメソッドとデコレーター、エラー「functools.partial」オブジェクトに属性「__module__」がありません
現在、EndpointsModel を使用して、AppEngine 上のすべてのモデル用の RESTful API を作成しています。RESTful であるため、これらの API には繰り返しのコードが多くあり、これを回避したいと考えています。
例えば:
それらをジェネリックにしたい。だから私はクラスにメソッドを動的に追加しようとします。私がこれまでに試したこと:
しかし、のデコレータとパーシャルの'functools.partial' object has no attribute '__module__' exception.
間にいくつかの競合があるためだと思います。endpoints.method
しかし、それを回避する方法がわかりません。
関連記事:
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.method
user_required=True
編集:認証トークンを渡す代わりに、認証されたユーザーが API メソッドに渡すことができる「API トークン」を要求することは理にかなっていますか? このトークンは POST または GET 本文に含める必要がありますか、それともヘッダー/Cookie に入れることができますか (Cloud Endpoints のヘッダーと Cookie に関する SO の他の場所でいくつかの質問を見ましたが、それからしばらく経ちました)。これはすべて、Google 以外の認証が機能しないことを前提としています。
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コードです
何か不足していますか?アドバイスをありがとう。
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 ライブラリの使用。
google-cloud-endpoints - endpoints-proto-datastore を使用して、repeat=True の場合に ndb.KeyProperty を取得する方法
GAE バックエンド API が、各連絡先に対応する電子メールのコレクションを含む連絡先のリストを返すようにしたいと考えています。私はendpoints-proto-datastoreを使用しており、この質問のガイドラインに従ってこれを実装しました。
私の問題は、contacts_list
メソッドが呼び出されると、次のようになることです。
Contact.email_keys が空 ([]) である可能性がありますが、この動作を制御する場所がわからないため、これが発生すると思います。
私のAPI実装の関連部分は次のとおりです。
python-2.7 - endpoint-proto-datastore を使用してモデル以外のものを返す方法
Google Cloud Endpoints と endpoints-proto-datastore ライブラリを介して API をコーディングしています。
これが私のモデルです:
そして、これは私の削除方法です:
モデル自体以外のものを返すことはできますか? 特定の HTTP ステータス コードや VoidMessage などを返すにはどうすればよいですか?