【问题标题】:Google OAuth 2.0 what in the code paramater should i pass to my authentication functionGoogle OAuth 2.0 我应该将代码参数中的什么传递给我的身份验证功能
【发布时间】:2020-06-25 03:08:14
【问题描述】:

您好,我有一个 nodejs http 服务器,如果有人进入 www.example.com/login,他们会被重定向到 google oauth2 url,然后返回我的站点并输入代码。 当用户使用www.example.com/?code=4/SomeCodeHere&scope=SomeScopeHere 回到我的网站时 我想获取 url 的哪一部分是身份验证所需的代码以及它应该如何格式化 %2 或 / 等

【问题讨论】:

    标签: node.js oauth-2.0 google-api


    【解决方案1】:

    当您被重定向回网址时,以下网址

    www.example.com/?code=4/SomeCodeHere&scope=SomeScopeHere

    code 参数包含 authorization_code 授权,在这种特殊情况下等于 4/SomeCodeHere。以下是您需要完成的以下步骤:

    1. 您的浏览器客户端应该将 authorization_code 传递给您的服务器(例如,使用 HTTP post 或 get)
    2. 然后后端必须向 Google API 发出请求并发送该代码以获取 access_token,此外您将收到包含基本用户个人资料信息的 id_token
    3. 收到来自 google 的响应后,您必须验证其签名以确保响应确实来自 google。可以通过计算和比较 id_token JWT 签名来完成
    4. 如果一切正常,则后端将通知浏览器有关身份验证成功。

    下面是描述整个过程的抽象图。 (你的授权服务器和资源服务器是同一个服务器):

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-29
      • 2012-01-20
      • 2016-10-01
      • 2012-06-23
      • 1970-01-01
      • 2023-03-07
      • 2016-10-12
      • 1970-01-01
      相关资源
      最近更新 更多