了解 OAuth2 令牌何时过期

Know when OAuth2 token will expire

是否可以知道 OAuth2 令牌何时过期? 是否有关于处理可能已过期且您不知道确切时间的令牌的最佳做法?您可以尝试使用令牌然后失败,然后请求一个新令牌,或者您可以只请求一个新令牌并避免可能出现错误的麻烦。没有简化的方法可以确定吗?我知道的唯一可能的好解决方案是简单地存储令牌首次创建的日期,但我认为我们不知道服务将令牌视为良好的时间。

服务器可能会在访问令牌旁边提供 expires_in parameter

无论哪种方式,您都应该在每个请求中处理对无效令牌的错误响应,因为它们可能会在正常到期时间之前被服务器撤销。从理论上讲,您可以在第一次请求中检查访问令牌是否有效,而在下一次请求中它将无效。

如果服务器提供刷新令牌,您可以在需要确保其有效时随时请求新的访问令牌。