【问题标题】:Appengine Cloud Endpoints with new Google+ sign-in使用新的 Google+ 登录的 Appengine Cloud Endpoints
【发布时间】:2023-12-31 08:28:01
【问题描述】:

新的 google+ 登录 API 如何适合对 Cloud Endpoints 进行经过身份验证的调用。要将 OAuth 与端点一起使用,应用程序必须至少请求“https://www.googleapis.com/auth/userinfo.email”范围的权限。使用 Google+ 登录按钮会授予此范围吗?还是我将不得不向我的用户请求另一个许可?

【问题讨论】:

    标签: google-app-engine oauth-2.0 google-plus google-cloud-endpoints


    【解决方案1】:

    Google+ 登录按钮具有“范围”属性,您可以在该属性中列出您想要请求的其他范围。您可以在那里列出 userinfo.email 范围以及任何特定于云的范围。

    如果您需要retrieve a user's email address,您可以在该属性中添加 userinfo.email 范围,然后使用适当的 REST 端点检索地址。

    此外,要在移动应用中检索电子邮件地址,请参阅:

    【讨论】:

    • 这对我不起作用。我刚刚在屏幕上显示“发生内部错误”。你真的这样做了吗?
    • 我搞定了。我必须至少拥有登录范围,我只是使用 userinfo.email。我必须说这是一个很好的流程并且易于实现!
    • 此功能是否为您提供了 google+ 用户个人资料的其他元素?比如用户头像?
    • sthomps@ 每个用于登录的范围都提供对个人资料图片的访问权限(如果用户有一个)。请参阅devsite.googleplex.com/+/api/oauth 的范围列表
    【解决方案2】:

    userinfo.email 范围是 plus.login 范围的补充。事实上,plus.login 明确授予对用户电子邮件地址的访问权限。

    虽然您会要求“其他权限”,但这一切都是在一个 OAuth 屏幕中同时完成的,因此所有权限都会一次列出。用户不会看到一屏又一屏的权限,他们的电子邮件请求将与 plus.login 范围信息的请求一起列出。

    【讨论】:

    • 好的,我将对此进行测试。你了解安卓吗?如果我使用新的登录按钮,是否可以将 userinfo.email 范围包含在相同的权限请求中??
    • 我确实在文档中看到您可以从 PlusClient.Builder 请求范围,但是列出的范围只是 g+ 范围。我将尝试 userinfo.email 范围,看看会发生什么......
    • 您应该能够添加您的应用程序需要的任何范围,尽管我承认我自己没有尝试过。然而,这是 OAuth 设计的一部分,因此它“应该”起作用。
    • 到目前为止没有运气。我在屏幕上看到“发生内部错误”。
    最近更新 更多