【问题标题】:How to use Google Users API with Google App Engine and Android如何将 Google 用户 API 与 Google App Engine 和 Android 一起使用
【发布时间】:2011-08-15 16:37:08
【问题描述】:

服务器在 Google App Engine 上,客户端是 Android 移动应用。我想使用用户 API 通过 GAE 上的 REST API 从 Android 登录用户。

在用户 API 文档中,看起来关键(在服务器上构造用户对象)是电子邮件。但有人告诉我有一种方法可以通过 oauth 令牌获取用户对象。这意味着您将调用 users.get_current_user() 并且令牌将自动用于获取该用户对象。

问题:

1 - 是否有此过程(代码)的示例可用? 2 - 用户 API 期望在哪里找到 oath 令牌?作为请求参数?是否在调用 get_current_user() 时自动注入令牌?

谢谢!

【问题讨论】:

  • 我想做同样的事情,只是我没有使用 OAuth。相反,我使用的是谷歌的身份验证。我试图通过将 ASID cookie 与请求一起传递来获取用户对象,但我总是从 getCurrentUser() 返回 null。我在这里发布了这个问题:stackoverflow.com/questions/9811730/…。我在 appengine 上使用 java

标签: android python google-app-engine oauth


【解决方案1】:

来自OAuth API 文档:

from google.appengine.api import oauth

user = oauth.get_current_user()

对于有效的 OAuth 请求,这将返回一个 db.User 对象,就像 users.get_current_user() 一样。

您的应用的 OAuth 端点 URL 在同一页面上进行了详细说明。

【讨论】:

  • 谢谢,剩下的一个问题我很清楚。 “一旦获得授权,消费者就会调用服务提供商来获取访问令牌。消费者将这个令牌包含在对应用程序 Web 服务端点的所有请求中。” -- 令牌是如何提供的?作为查询字符串参数?
  • 访问令牌包含在授权标头中。见例子@code.google.com/apis/accounts/docs/OAuth_ref.html#SigningOAuth
猜你喜欢
  • 2013-10-27
  • 1970-01-01
  • 2016-08-10
  • 1970-01-01
  • 2016-07-13
  • 2011-11-15
  • 1970-01-01
  • 2013-11-05
  • 2013-11-26
相关资源
最近更新 更多