Springboot微服务分布式框架Rouyi Cloud权限认证(登录流程之token解析)
前言
上一章节讲解了Spring Cloud框架Rouyi Cloud的环境部署安装,以及安装过程中遇到的一些问题(后端问题在Springboot、微服务中都有解决方法,所以重点只提了前端的一些问题)。
今天我们来讲解下整个框架的入口,登录流程之token解析。
系统罗列
今天只展示登录鉴权这一块,我们需要用到的系统模块如下:
- 用户访问的Web前端系统:rouyi-ui
- 网关系统:rouyi-gateway
- 授权业务系统:rouyi-auth
1、Web前端系统:rouyi-ui
在Idea里打开Terminal(中文版是终端),输入命令:
npm run dev
1.2、访问前端页面
访问前端页面,由于没有登录(token)信息,会直接跳转到登录界面。
这里没有启动后台系统,获取验证码接口失败。
1.3、解析前端登录接口
前端登录接口:login(
http://localhost/dev-api/auth/login)
验证码接口:code(
http://localhost/dev-api/code)
1.3.1、解析地址
http://localhost/dev-api/auth/login
localhost 补全:localhost:80,对应上rouyi-ui的80端口
dev-api/auth/login,我们带上问题继续看下去
1.3.2、配置路径
可以看到rouyi-ui前端系统,为不同环境配置了访问路径前缀。
在dev环境中,对应的地址是:VUE_APP_BASE_API = ‘/dev-api’
那么【1.3.1】的路径,就剩下/auth/login了
2、网关系统:rouyi-gateway
2.1、启动nacos
启动nacos之后(nacos需要配置数据库并启动),可以看到ruoyi-开头的很多配置项。
2.2、启动rouyi-gateway
启动rouyi-gateway,可以看到默认的端口是8080,正好对应上rouyi-ui上配置的默认代理。
2.3、路径路由
可以在nacos里找到ruoyi-gateway-dev.yml文件,里面有对路由的配置。
routes:
# 认证中心
- id: ruoyi-auth
uri: lb://ruoyi-auth – 下面的路径,匹配ruoyi-auth系统
predicates:
- Path=/auth/** – 匹配前端访问的路径,凡是/auth/开头都匹配上
filters:
# 验证码处理
- CacheRequestFilter
- ValidateCodeFilter – 处理验证码
前文【1.3.2】的地址:/auth/login,正好对应ID为ruoyi-auth的路由规则,凡是/auth/开头的地址,都会路由到ruoyi-auth系统。
2.4、代码解析
2.4.1、获取验证码
获取验证码接口:com.ruoyi.gateway.config.RouterFunctionConfiguration.routerFunction
在RouterFunctionConfiguration类上有注解:@Configuration
生成验证码,并最终转换成图片流输出到页面。
2.5、返回前端查看验证码
rouyi-gateway启动成功了,也看到了验证码的代码就在rouyi-gateway系统里,这时返回网页,可以看到验证码已经显示出来了。
3、授权业务系统:rouyi-auth
授权认证中心也启动成功了,我们是通过网关+nacos微服务访问,所以业务系统的端口号无所谓了。
3.1、查看接口
找到类: com.ruoyi.auth.controller.TokenController
里面有4个接口:登录、登出、刷新token、注册
3.1.1、登录接口
登录接口主要做了2件事:
1、校验用户名、密码是否正确;
2、根据用户信息,创建token,并返回给前端
总结
其他细节就留给大家去继续探索, token这块我们就讲解到这里。
到此这篇关于Springboot微服务分布式框架Rouyi Cloud权限认证(登录流程之token解析)的文章就介绍到这了,更多相关Spring boot Rouyi Cloud权限认证内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
- 基于SpringBoot整合oauth2实现token认证
- springboot+jwt实现token登陆权限认证的实现
- SpringBoot和Redis实现Token权限认证的实例讲解
- SpringBoot整合Sa-Token实现登录认证的示例代码
- SpringBoot整合token实现登录认证的示例代码
- SpringBoot使用Sa-Token实现登录认证
- SpringBoot使用Sa-Token实现权限认证
- 在SpringBoot中使用jwt实现token身份认证的实例代码
- Springboot 如何使用 SaToken 进行登录认证、权限管理及路由规则接口拦截
- springBoot整合jwt实现token令牌认证的示例代码
相关文章
Spring Boot整合EasyExcel(完整版包含上传解析excel和下载模板)
这篇文章主要介绍了Spring Boot整合EasyExcel(完整版包含上传解析excel和下载模板),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-12-12java在linux系统下开机启动无法使用sudo命令的原因及解决办法
每次开机自动启动的java进程,页面上的关机按钮都无法实现关机功能,但是此时如果以chb账号通过ssh登录该服务器,手动杀掉tomcat进程,然后再重新启动tomcat,页面上的关机按钮就有效了2013-08-08Mybatis通用Mapper(tk.mybatis)的使用
本文主要介绍了Mybatis通用Mapper(tk.mybatis)的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-07-07完美解决SpringCloud-OpenFeign使用okhttp替换不生效问题
这篇文章主要介绍了完美解决SpringCloud-OpenFeign使用okhttp替换不生效问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-02-02移动开发Spring Boot外置tomcat教程及解决方法
这篇文章主要介绍了移动开发SpringBoot外置tomcat教程,需要的朋友可以参考下2017-11-11
最新评论