【发布时间】:2014-07-14 21:00:54
【问题描述】:
据我了解,App Engine 应用默认是 OAuth 1 提供者。
有没有办法使用 OAuth2,例如使用 Google+ 登录或(移动)chrome.identity API,同时仍利用 GAE 用户 API 并且不必实现自定义提供程序?
如果不可能,有什么替代方案?
【问题讨论】:
标签: google-app-engine oauth go oauth-2.0 google-chrome-app
据我了解,App Engine 应用默认是 OAuth 1 提供者。
有没有办法使用 OAuth2,例如使用 Google+ 登录或(移动)chrome.identity API,同时仍利用 GAE 用户 API 并且不必实现自定义提供程序?
如果不可能,有什么替代方案?
【问题讨论】:
标签: google-app-engine oauth go oauth-2.0 google-chrome-app
对于您所说的“(移动)chrome.identity API”,我无话可说,但是,由于它的 google-chrome-app 标签,我可以回答您的问题,我可以回答 Chrome 应用程序: 是的,可以使用 chrome.identity API 连接到 OAuth1 服务器(我已经完成了),但工作量很大,而且您必须在所有 OAuth1 握手过程中花时间。这比尝试在没有 chrome.identity 的情况下进行连接要容易一些,但不如连接到几乎是自动的 OAuth2 服务器那么容易。
请注意,这不是使用 OAuth2 进行连接的一种方式,这正是您真正要求的。相反,它是一种使用 chrome.identity(用于 Chrome 应用程序)连接到 OAuth1 服务器的方式。
【讨论】:
Cloud Endpoints 似乎正是我需要的解决方案。它们不是(还?)官方 GAE for Go 文档的一部分,而是 can be found at Github。
可能最好的开始方式是examplary tictactoe app。
使用 Google+ 登录按钮的快速测试成功(尽管我的配置可能有误,但它在后台执行了多个调用,其中一些导致范围错误)。
【讨论】: