問題タブ [gae-userservice]
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.
java - GWT の UserService
Google の App Engine を使用するためのテスト アプリケーションを作成しています。デフォルトの UserService を使用してログイン機能を提供したいと考えています。ログインするには、クライアントからサーバーへのリクエスト:
サーバーは、クライアントに返されるログイン URL を生成します。
コードがコンパイルされて実行されます。さて、私の問題は、userService オブジェクトがどういうわけか正しくロードされていないことです。その上で任意のメソッド (isUserLoggedIn() など) を呼び出すと、null ポインター例外がスローされます。私は何が欠けていますか?
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 - AppEngine Cloud Endpoints とカスタム ユーザー サービス
Google AppEngine エンドポイントでカスタム ユーザー サービス (UsersService インターフェイスを実装するサービス) を使用することは可能ですか?
Google AppEngine Web サイトの例を見てみましょう
アプリケーションに対してリクエストが行われ、このエンドポイントがヒットすると、何らかの方法でユーザー サービスに接続し、認証されたユーザーに関する情報を取得します (リクエストで OAuth トークンを使用できるため)。
UsersService
インターフェイスを実装し、ユーザーオブジェクトを提供する独自のサービスを何らかの方法で使用したいと思います。
google-app-engine - ユーザー サービスで使用すると App Engine がエラーを返す
アクセスを制限するために、ユーザー サービスを自分のアプリに関連付けようとしていました。アプリは日食中に正常に動作しましたが、アプリ エンジンにデプロイすると、期待どおりに Google ログイン ページにリダイレクトされませんが、エラーが発生します: サーバー エラー サーバーでエラーが発生し、要求を完了できませんでした。30 秒後にもう一度お試しください。 これは、使用されるサーブレットのセクションです。
google-app-engine - UserService で OAuth2 / OpenID Connect を使用するには?
Google App Engine でいくつかのアプリを実行しています。ユーザーなどに代わってメールを送信できるようにするために認証にUserServiceを使用し、API承認にはOAuth2を使用しています。
現在、Google Apps Marketplace でアプリを公開しようとしていますが、認証に OAuth2 を使用する必要があるというメールを受け取りました。
サポートされている Google スタックを使用しているだけなので、Google Apps Marketplace でアプリを公開するための要件を満たす方法があると思いますが、現在行き詰まっています。
google-app-engine - Google Apps のユーザー ロールを Google App Engine アプリケーション内で取得できますか
Google Apps ユーザーが使用する Google App Engine アプリケーションがあります。そのためには、ユーザーの役割と権限を Google App Engine アプリケーションに反映する必要があります。しかし、UserServices API を使用すると、ニックネーム、電子メール ID のすべての詳細しか取得できません。しかし、GAE アプリケーション内で特定のユーザーに割り当てられたロールを取得する方法が見つかりませんでした。
python - バックグラウンド スレッドから GAE データストアにアクセスする
Google App Engine を使用して Web アプリケーションを作成しています。XML フィードから取得したライブの一時的な情報に基づいて、スクリプトでユーザー プロファイルを頻繁に更新したいと考えています。GAE background_thread を使用してこれを行っているため、これが実行されている間もサイトが動作し続けることができます。
このバックグラウンド スレッドの外でも、ユーザーは Web サイトをナビゲートして、プロファイルを変更できます。
バックグラウンド スレッドは、ライブ XML データに基づいてユーザー プロファイルを更新し、プロファイルをデータストアに再入力するという、本来の処理を正確に実行します。ただし、ユーザーがプロファイルを変更しても、バックグラウンド スレッドは変更を認識しません。ndb データストア クエリから返されたリストは、ユーザーが行った変更を反映していません。
興味深いのは、新しいユーザーがデータストアに追加された場合は正しい変更が反映されますが、既存のユーザー プロファイルが変更された場合は変更が反映されないということです。バックグラウンドスレッドからデータストアをクエリ/プットできるはずですか?
背景スレッドの要点:
クラス updateAccounts():
これは、プロファイルが変更される場所です。