1.网关依赖
<!-- 网关 配置 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-gateway</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-loadbalancer</artifactId> </dependency>
2.配置设置 application.yml
server: port: 9999 spring: application: name: gateway cloud: nacos: discovery: server-addr: localhost:8848 # 注册中心 gateway: routes: # gateway开始配置路由信息 - id: gateway-shanghai uri: lb://shanghai predicates: - Path=/show/** # 如果java访问这个数字元素的方式:spring.cloud.gateway.routes[0].predicates[0] # routes属性实际上是一个数组,yml文件中出现 "- ...."配置时表示当前配置时一个数组元素 - id: gateway-beijing # 这个配置指定这个路由的名称,这个名称和其他任何位置没有关联 # 只需要注意不能再和其他路由名称重复 # uri设置路由的目标 # lb是LoadBalance(负载均衡)的缩写,beijing是注册到nacos的服务名称 uri: lb://beijing # 我们需要设置一个条件,当访问路径满足特定条件是,使用当前路由规则 predicates: # predicates翻译为断言,所谓断言就是判断一个条件是否满足 # Path 是路径断言,意思是满足路径为XXX时使用这个路由 - Path=/gateway/** # http://localhost:9999/gateway/show 会路由到 9999/gateway/show