*********************************************禁止转载****************************************************
这个版本简直欲仙欲死,各种冲突,搜博客总是残缺的,这里个人总结一下
这里用的Spring cloud 版本 版本 版本 重要的事情说三遍
父级 pom 2.3.1.RELEASE
org.springframework.boot spring-boot-starter-parent2.3.1.RELEASE
定义dependencyManagement
com.alibaba.cloud spring-cloud-alibaba-dependencies2.2.0.RELEASE pom import org.springframework.cloud spring-cloud-dependenciesHoxton.RELEASE pom import
com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discoverycommons-lang commons-lang2.6 com.alibaba.cloud spring-cloud-starter-alibaba-nacos-configorg.apache.httpcomponents httpcore4.4.15 org.springframework.boot spring-boot-starterorg.springframework.boot spring-boot-starter-testtest org.springframework.cloud spring-cloud-starter-gatewayio.projectreactor.netty reactor-netty0.9.8.RELEASE org.springframework spring-webflux5.2.7.RELEASE io.projectreactor.addons reactor-extra
准备yaml
这一有点疑问搞了很久 本地yaml 须命名为:bootstrap.yml,才能读到
server:
port: 8084
spring:
application:
name: XXX-gateway
cloud:
nacos:
discovery:
server-addr: XXXXXXXXXXXX:8848
config:
server-addr: XXXXXXXXXXXX:8848
file-extension: yaml
启动类加上
@EnableDiscoveryClient
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
Nacos用的 2.0.3
同理nacos上创建配置文件,data-id=XXX-gateway.yaml,配置格式:yaml
启动服务
Nacos控制台查看服务列表是否已存在XXX-gateway
更改nacos上的配置文件 ,已经动态刷新配置了
路由配置
spring:
cloud:
gateway:
routes:
- id: userManagerment# 题目微服务路由规则
uri: lb://userManagerment# 负载均衡,将请求转发到注册中心注册的XXXXX服务
predicates: # 断言
- Path=/userManagerment/** # 如果前端请求路径包含 api/XXX,则应用这条路由规则
filters: #过滤器
- RewritePath=/userManagerment/(?.*),/${segment} # 将跳转路径中包含的 XX替换成空
id里面保持唯一即可
uri: lb://userManagerment,userManagerment代表准备微服务名,在服务列表中
uri: http://baidu.com ,代表转发网址
predicates: # 断言
- Path=/userManagerment/** ,即路径中包含XXX字符,转发这个规则
filters: #过滤器
- RewritePath=/userManagerment/(?
这个filters 是去掉实际转发的路径规则,
比如前端发起:http://127.0.0.1:8084/userManagerment/user/getUserInfo
filters 将中间userManagerment删除掉,
转发到实际服务就是http://127.0.0.1:8081/user/getUserInfo
目前为止基础整合完毕,当然后续需要加上登录验证,权限等等
仅仅个人记录,仅供参考
*********************************************禁止转载****************************************************



