【问题标题】:Google App for business + OpenId + GoogleAPIs in Java GAEGoogle App for business + OpenId + Java GAE 中的 GoogleAPI
【发布时间】:2013-03-30 18:14:55
【问题描述】:

我在尝试开发一个谷歌应用程序以投放市场时发现了很多问题,使用 OpenID 并从 GAE 上的后台服务器访问一些谷歌 API,如 G+

我有使用 google apis 运行的应用程序来访问 G+ 数据,3 条腿 oAuth(代码流)没有问题,我理解幕后的“魔法”,但我迷失了 OpenID 和谷歌市场。在用户通过 OpenID 谷歌过滤器后,我是否需要执行 3legged oAuth,并让用户接受 G+ 权限 API 以使用该令牌访问谷歌 API?如果是这种情况,如果用户从他的公司 gmail 帐户访问应用程序,并且当提示接受 g+ 访问时,他更改帐户会发生什么?有没有什么好的阅读可以让谷歌应用程序、openID 和从 GAE 访问谷歌 api 变得更容易?

为什么我在将应用程序发送到市场时,无法在应用程序配置文件中指定 G+ 的范围?

在这种情况下,获取用户 g+ 个人资料(图片、全名、昵称)的最佳方式是什么?我缺少什么?谷歌文档真的很好,当你找到正确的,但很多链接都是已经死亡和数以百万计的带有已弃用 gdata api 的示例充斥着网络......

【问题讨论】:

    标签: java google-app-engine openid google-apps google-apps-marketplace


    【解决方案1】:

    好的,经过进一步阅读和测试,我想出了以下几点:

    • Google Marketplace 就在您下方访问 this apis,无需额外的“oAuth dances”
    • 如果您想要访问的 API 比上面列出的更多,您需要 oAuth 交换来获取您想要访问的 API 的特定令牌。
    • 就我而言,我想在市场的 openID 之前访问 G+ API,所以在使用 openID 登录用户后,我需要将他重定向到 google api oAuth 接受屏幕(只是第一次)

    我花了很长时间才了解的有关市场的更多信息: - 计费 API 和许可 API 已弃用,这意味着您有责任向用户计费并跟踪他们以了解给定用户是否已支付应用程序或许可何时过期 - 你需要映射 /_ah/login_required 因为你的应用程序应该设置(当你创建它时)只接受联合登录,这将导致重定向到 /_ah/login_required 从你需要做 openID 东西的地方。

    文档中的很多链接都已损坏,示例太旧:(

    【讨论】:

      【解决方案2】:

      现在有了新的 Google Apps Marketplace 体验,它实际上变得更简单了。如果您按照 the docs 中的步骤操作并确保在 App Engine 代码中要求相同的范围,则永远不会提示用户。

      【讨论】:

        猜你喜欢
        • 2011-04-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多