Oauth2.0的refresh token的接口如何实现?
问题描述
Oauth2.0中当access_token过期后可以用之前获取到的refresh_token来重新申请令牌,现在的问题是不知道认证服务器是如何根据refresh_token来重新给客户端发放令牌的。
问题出现的环境背景及自己尝试过哪些方法
查阅了一些资料,感觉实现方式多样化,认证服务器的refresh的接口返回的数据主要有以下几种:
1、返回全新的access_token和refresh_token。
2、返回新的access_token,但是refresh_token是旧的。(可能是旧的refresh_token的过期时间会更新)
3、返回旧的access_token和旧的refresh_token。(个人感觉是因为更新了过期时间,所以之前的access_token还可以用了)
你期待的结果是什么?实际看到的错误信息又是什么?
我个人感觉前两种本质差不多,第三种都是旧的只更新时间不太好。
请大神指教以上几种方式哪种更好一点?或者说有更好的实现方式?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
印象中记得refresh_token是有 过期时间的, 过期时间 比 access_token的要长的多。
首先 有接口获得 access_token 和refresh_token 然后根据refresh_token刷新access_token
两个 xxxx_token 都有有效时间
那么LZ的问题是:refresh_token的接口返回
我个人认为
第二种方式:返回新的access_token,但是refresh_token是旧的。(可能是旧的refresh_token的过期时间会更新)
会比较好一点。 因为既然都调用了refresh接口,就是想要获得新的access_token了,但 至于是否返回旧的refresh_token ,我觉得是要看 该refresh_token的使用次数与有效期。
意思是:该refresh_token使用了n次要返回新的 / 剩余n秒要返回新的
参考一下:https://blog.csdn.net/qq_3940...