OAuth统一认证流程梳理

用户 应用前端 应用后端 认证端 用户资源 1. 访问应用页面 2. 正常请求接口 3. 登录过期或未登录,返回401,(返回:client_id,state,redirect_url) 4. 重定向到认证页(url参数:client_id+state+redirect_url) 5. 重定向到之前指定的redirect_url(url参数:code,state) 6. 前端解析code,state交给后端(传入:code,state) 7. 拿code去认证端换oauth_token(传入:client_id,client_sceret,code) 8. 返回oauth_token给应用后端(返回:oauth_token) 9. 头部携带oauth_token请求用户信息(请求头携带oauth_token传入) 10. 返回用户信息(返回:用户信息) 11. 保存用户信息,生成应用token返回给前端(返回:应用token) 12. 前端记录应用token并相应用户 用户 应用前端 应用后端 认证端 用户资源

注意:如果想让用户认证完成后重定向回原来访问的那个页面,需要在服务器返回401的时候在localstorage中记录下来当前页面的url,并在认证完成时跳转回那个url

相关推荐
明洞日记10 小时前
【设计模式手册019】状态模式 - 管理对象状态转换
java·设计模式·状态模式
聪明努力的积极向上10 小时前
【设计优化】卫语句、策略模式、状态模式
bash·状态模式·策略模式
野生技术架构师1 天前
Java面试题及答案总结(互联网大厂新版)
java·面试·状态模式
. . . . .1 天前
备份11111
状态模式
Light601 天前
【MCP原生时代】第2篇|前端如何舞动 MCP:新一代交互范式——从 Hook 到流式渲染,打造 AI 原生前端体验
状态模式·前端架构·mcp·react hook·流式渲染·ai交互
阿珊和她的猫2 天前
实现资源预加载:提升网页性能与用户体验
状态模式·ux
列星随旋2 天前
minio分片上传
状态模式
我爱学习_zwj2 天前
前端设计模式:轻量级实战指南
设计模式·前端框架·状态模式
LSL666_2 天前
9 前后端数据处理格式的注意事项
状态模式·请求·响应