access_token和refresh_token实效如何设置
什么时候需要用户跳转到登录页面重新登录?
token 过期了就需要用户跳转到等页面重新登录?显然不是,如果是 不活跃用户 token过期了,确实需要跳转到登录页面重新登录。但是如果是 活跃用户,就算Token过期了,也不应该跳转到登录页面重新登录。
时效设置
为了保证能够刷新用户端的 access_token ,refresh_token 的有效时间不能小于 用户活跃时间点,假设 access_token 有效时间为et,那么用户在[access_token 起始时间,2 * et]时间内用户都是活跃的,因此 refresh_token 的有效时间 >= 2 * access_token
一般,refresh_token 的有效时间 > 2 * access_token 的有效时间 比如,access_token 实效7天,那么 refresh_token 实效可以给15天,也可以给30天 当然,access_token和refresh_token 的时长具体多少,需要根据环境决定,如涉及到金钱的 银行客户端,12306客户端等 token时长都很短,而普通app客户端的token可以是几天甚至上月.
刷新refresh_token 每次 刷新access_token 时判断 refresh_token 是否快过期 [ refresh_token 剩余有效时间 <= 2*access_token实效],如果是,那就连refresh_token 也刷新。 如果希望降低 刷新refresh_token 频率,可以将 refresh_token 实效提高