一.配置网关路由和路径重写
1.在运行网关时,遇到autoconfig错误,说mybatis-plus有3.3.1,和3.4.3.2两个依赖,然后找不到3.4.3.2的什么东西,最后再common中依赖mybatis-plus版本换成repo中的3.3.1就好了
2.运行后台前端时,想要发送请求到后端,通过网关添加路由规则进行访问就行,注意路径重写的方法(见官网:https://docs.spring.io/spring-cloud-gateway/docs/current/reference/html/#the-rewritepath-gatewayfilter-factory),不然验证码等资源访问不到
路径重写详见:https://blog.csdn.net/qq_39794062/article/details/118492031
gateway工程application.yml内容:
1 spring: 2 cloud: 3 gateway: 4 routes: 5 - id: admin_route 6 uri: lb://renren-fast 7 predicates: 8 - Path=/api/** 9 filters: 10 - RewritePath=/api/?(?.*),/renren-fast/$\{segment} 11#前端项目, 都加上api前缀
前端static->config->index:设置前缀地址
3.然后前端访问后端,可能会设计跨域的问题,是浏览器自带的安全机制,只要访问其他网站(从端口地址之前的所有信息字段,严格一致,只要不一致就是其他网站)就会跳转不了界面;
解决办法有两个:一个是利用nginx,把网关和服务器都交给它,前端访问就一直是同一个nginx地址,不会出现跨域问题;
第二个就是在网关处设置filer,给请求数据添加上允许跨域的请求头信息,这样访问时就不存在跨域问题.
(千万注意!!!此方法一定要加@Configuration注解,刚踩完坑.)
还有就是一定要细心!!!