【问题标题】:How do refresh tokens work in an OAuth flow?刷新令牌如何在 OAuth 流中工作?
【发布时间】:2016-03-19 13:37:51
【问题描述】:

我正在使用 uses OAuth to authenticate users for the API 的 Reddit API。

他们的 OAuth 的 API 提到,本质上是您向用户展示了一个网页,在他们批准后,他们会被重定向回您的应用程序,该应用程序会获得一个代码。然后,您可以获取此代码并向 API 发出请求,以获得可以存储的访问令牌。

通过专门的 Reddit API,您可以设置持续时间,可以是临时的,也可以是永久的。对于永久,您似乎需要恢复与上述访问令牌一起收到的“刷新令牌”,因为访问令牌将每小时过期一次,并且刷新令牌将允许您获得新的访问令牌。

我的理解正确吗?如果每小时到期,“永久”请求有什么意义?此外,我如何在应用程序意义上跟踪它?我是否在初始令牌后一小时设置计时器以请求新令牌?如果应用关闭了怎么办,我是否将上次请求时间写入磁盘,检查是否超过一个小时,否则刷新?

我是否正确理解刷新令牌并且必须手动管理它们?

【问题讨论】:

  • 您还可以使用“失败时刷新”方法来避免计时的复杂性,但会牺牲一点额外的网络流量。

标签: ios api oauth oauth-2.0 reddit


【解决方案1】:

我的理解正确吗?

  • 是的

如果每小时到期,“永久”请求有什么意义?

  • 用户已委派访问您的应用程序。用户可以随时撤销访问权限。

此外,我如何从应用程序的角度进行跟踪?

你可以做一个计时器,或者正如 Wain 所说,只是“刷新失败”。

如果应用程序关闭了怎么办,我是否将上次请求时间写入磁盘, 检查是否超过一个小时,否则刷新?

是或使用“失败时刷新”方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-11
    • 1970-01-01
    • 2020-05-05
    • 1970-01-01
    • 1970-01-01
    • 2020-08-19
    • 2019-05-02
    • 1970-01-01
    相关资源
    最近更新 更多