【问题标题】:How to get the refresh token with Google OAuth2 Javascript library?如何使用 Google OAuth2 Javascript 库获取刷新令牌?
【发布时间】:2013-10-01 16:00:08
【问题描述】:

我正在使用 Google OAuth2 Javascript 库向用户请求访问令牌。我想将令牌存储在服务器上的数据库中。

为了能够在令牌过期后访问该用户的数据,我还需要存储刷新令牌。我知道在使用服务器端 Google OAuth2 库时如何做到这一点(指定 access_type=offline),但我需要能够使用客户端 Javascript 库来做到这一点,但它不起作用。

【问题讨论】:

  • 你知道怎么做吗?你能帮忙吗?

标签: google-oauth


【解决方案1】:

您确实想将刷新令牌存储在客户端中!这类似于存储他的用户名和密码。

Javascript 客户端不支持 type=offline,因为这会暴露刷新令牌。

您的选择是:-

  1. 在服务器上生成和存储刷新令牌
  2. 让您的客户在需要时继续请求访问令牌。设置immediate=true,以便与用户没有可见的交互

【讨论】:

  • 那么有没有办法从客户端生成访问和刷新令牌并将它们发送到服务器上存储?我尝试这样做的原因是用户在进行身份验证时正在与客户端应用程序(Ember)进行交互,而不是与服务器端应用程序进行交互,因此我无法在服务器上生成令牌。这有意义吗?
  • 访问令牌和刷新令牌是不同的。用户可以在客户端生成访问令牌。他不能生成刷新令牌。除了客户端之外,在服务器上进行身份验证并不是特别困难。我的应用程序在服务器上进行初始授权和刷新令牌处理。一旦用户通过身份验证,服务器就会为 javascript 应用程序提供服务。然后,javascript 应用程序独立于服务器进行自己的访问令牌处理。
猜你喜欢
  • 1970-01-01
  • 2018-02-27
  • 1970-01-01
  • 2017-05-12
  • 1970-01-01
  • 2020-10-08
  • 2016-10-13
  • 2012-06-29
  • 2022-08-22
相关资源
最近更新 更多