問題タブ [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.
google-app-engine - endpoints-proto-datastoreを使用して、EndpointsModelに含まれていないメソッドに属性をどのように渡しますか
EndpointsModelに含まれていない属性をAPI呼び出しに渡そうとしています。たとえば、次のモデルがあるとします。
attr2
次に、パラメーターとして渡したいがattr2
、フィルターとして使用したくない、またはモデルに格納したくないと仮定します。文字列を渡してメソッド内で取得し、それを使用してビジネスロジックを実行したいだけです。
ドキュメントにはquery_fields
、メソッドに渡すフィールドを指定するためのパラメーターが記載されていますが、これらはモデル内に含まれる属性に結合されているように見えるため、モデルで指定されていない属性を渡すことはできません。
同様に、ドキュメントには、パス変数を介して属性を渡すことができると記載されています。
ただし、これにはURLを変更する必要があります。さらに、これにはと同じ制約があるようquery_fields
です(属性はモデルに存在する必要があります)。
python - ImportError: endpoints_proto_datastore.ndb という名前のモジュールがありません
endpoints_proto_datastore.ndb
Python で Endpoints API を使用しているときに、モジュールをインポートできません。誰かが同様の問題に直面していますか? 何が問題なのか教えてください。
Python 用の Google App Engine SDK 1.7.5 を使用しています。
python - 挿入されたオブジェクトのIDを取得します
ユーザーをモデル化するエンドポイントを次のように定義しています。IDでユーザーに問い合わせることができます。しかし、ユーザーを挿入するときにそのIDを取得するにはどうすればよいですか?私のクライアントはJavaで書かれていますが、Pythonと生成されたJavaクライアントライブラリの両方でIDを取得する方法を知りたいです。
python - エンドポイント ユーザーをメールでクエリする
ユーザーの電子メールでエンドポイントを照会できるメソッドを作成しようとしています。私が以下でやっていることよりも良い方法はありますか?おそらく1つまたは0つのレコードのみを返すもの。
android - What is the best way to auth, identify and store delicate information about users?
With the purpose of learning about endpoints I'm building an app called "Where Are You?". The app lets users request the location of other users. The idea is that it does so by letting the user select a contact, lookup the contact by phone number in my endpoint. If found it means that the contact have the app and GCM is sent requesting the location. If the contact isn't found a SMS is sent with an url which will request the location through a browser, perform a http post of said location and have the server GCM it back to the person requesting the location.
I need to authenticate users of the app and store phone numbers of several contacts as well as users of the app. As of now I'll mainly focus on the server side of things.
How can I archive the above in a safe manner?
So far I'm enabling OAuth 2.0 for my API and passing the user_required=True
as argument to my Model.method
decorator. Resulting in the following code:
But the above code only requires a valid gmail account. I'm thinking something where you only can access a user if you already have the phone number? Which would be the case if I limit the response fields on the get method to exclude the phone number... unless someone decides to brute force the service. Suggestions? Comments?
From this I gather that I can configure my endpoint to only accept requests from my apps. Is that right? And if so, couldn't someone extract the need information from the apk or modify it to perform... evil? :)
Update:
A makes a request for B's location
Querys endpoint by phone number if not found simply send a request per SMS if found... go to 2.
Request is forwarded to GAE app
This is done by inserting a Location endpoint whoes id is a UUID and sends a GCM to B about the request
GAE app verifies that A's secret ID is on B's whitelist
There is no whitelist and the secret id is the UUID so this step is eliminated
The app then queries for B's location
If B decides to grant access to it's location B simply updates the Location endpoint based on the UUID
Once the app retrieves this information, it then verifies that it is only sending this information to the user identified by A's secret ID
When B updates it's location GAE sends a GCM to A informing about the update
The info is then sent securely to A's client
Done! GCM and SMS (and HTTPS) can be considered secure... right?
Update: GCM isn't secure... but does it really matter that much?
google-app-engine - EndpointsModel と ndb.Model の比較
そこでEndpointsModel
、モデルを作成する手段として偶然見つけました。オンラインで見ると、基本的にそれに関するチュートリアルはありません。使ったことのある人、メリットは?ndb.Model
私が意味する代わりに。
編集:
また、ユーザーに関する機密情報を認証、識別、保存するための最良の方法は何ですか?のコードを模倣しようとしました。それをチェックするだけですが、私の日食はそれを赤線で示しています:
python - endpoint-proto-datastore の使用中に親キーを設定するが、子キーは設定しない
EndpointsModel の親/祖先を設定し、エンティティ ID/キーをデータストアによって自動的に生成するにはどうすればよいですか?
keys_with_ancestorsサンプルを適応させようとしましたが、id と親の両方を指定する必要があるため、少し問題があるようです。親IDまたはキーのみを提供し、アプリエンジンデータストアによってエンティティID/キーが自動生成されることを除いて、同様のことをしたいと思います。
以下は、NDB のみを使用して行う方法を示しています。
これは可能で、誰かが私を正しい方向に向けることができますか? ありがとう。
google-cloud-endpoints - 単一のエンティティを取得しようとしたときのエラー
過去数日間、Google Cloud Endpoints をいじっていました (AngularJS に接続することを目指しています)。データストアから単一のエンティティを取得しようとすると、少し問題が発生しました。
私のndb
モデル設定は次のとおりです。
エンティティを取得するために定義した API メソッドは次の'title'
とおりです。
リクエスト フィールドの代わりに'id'
(によって提供されるヘルパー メソッド)を使用する場合、API メソッドは正常に機能します。ただし、を使用すると、EndpointsModel
'title'
'title'
404お探しのページが見つかりませんでした
{"error_message": "レシピが見つかりません。","state": "APPLICATION_ERROR"}
どこかで何かが欠けている場合、誰かが指摘できますか?
注: コメントを参照してください。読んでいた質問の誤り
400不正な要求
{"error_message": "ProtoRPC リクエストの解析中にエラーが発生しました (リクエストの内容を解析できません: メッセージ RecipeProto_title に必須フィールドのタイトルがありません)", "state": "REQUEST_ERROR"}
しかし、@sentikiはこの以前のエラーを解決できました。