双token的作用。
双token一般是用来解决开放平台给第三方平台授权
,授权快过期时自动续时的问题,防止频繁授权对用户不友好。
当三方平台申请授权时,开放平台会返回三方平台两个token,一个access-token,一个refresh-token。access-token过期时间比较短,可以设置20分钟,用来记录登录状态。refresh-token过期时间比较长,可以设置两天甚至更长。
当三方平台请求开放平台时会携带在access-token,如果过期,三方平台会带着refresh-token请求刷新access-token,服务端返回新的access-token和refresh-token。
为什么不是单token,要两个token
1,安全性。access-token时间短,放在三方平台的客户端,每次请求都带上,泄露风险大。refresh-token存储授权给的第三方平台的服务器上,不用每次都带上,而且用一次之后就会更新,安全性更高。
2,如果单token,又想实现刷新,需要三方平台每次去判断新旧是否一致,太麻烦。而且因为过期时间短,一旦token过期,需要重新授权,对用户体验不友好。