在若依项目中,Spring Cloud Gateway
的路由配置主要集中在 ruoyi-gateway
模块的 application.yml
文件中。
每个路由规则包含以下几个主要属性:
–id
: 路由的唯一标识。
–uri
: 路由目标URI
。可以是具体的HTTP
地址,也可以是注册中心中的服务名。
–predicates
: 路由断言,用于匹配请求。常用的有Path
、Host
、Method
等。
–filters
: 路由过滤器,可以对请求或响应进行处理。
spring:
cloud:
gateway:
routes:
- id: ruoyi-system
uri: http://localhost:9201/
predicates:
- Path=/system/**
- id: ruoyi-gen
uri: http://localhost:9202/
predicates:
- Path=/gen/**
这种方式适用于直接访问具体的 HTTP
服务地址,如 ruoyi-system
和 ruoyi-gen
等模块。
spring:
cloud:
gateway:
routes:
- id: ruoyi-system
uri: lb://ruoyi-system
predicates:
- Path=/system/**
- id: ruoyi-gen
uri: lb://ruoyi-gen
predicates:
- Path=/gen/**
这种方式适用于从注册中心获取服务地址,比如 Nacos
、Eureka
等。lb://
前缀表示负载均衡。
spring:
cloud:
gateway:
routes:
- id: ruoyi-ws
uri: ws://localhost:9301/
predicates:
- Path=/ws/**
这种方式适用于 WebSocket
协议的服务,如 ruoyi-ws
模块。
spring:
cloud:
gateway:
routes:
- id: ruoyi-system
uri: lb://ruoyi-system
predicates:
- Path=/system/**
filters:
- StripPrefix=1
这里使用了 StripPrefix=1
过滤器,表示去掉请求路径的第一个层级。
powered by kaifamiao