我想为spring.cloud.gateway.routes
配置属性中定义的所有路由指定一个公共前缀,而不是在其Path
谓词中为每个路由重复该前缀。
当前,我具有以下运行正常的配置:
prefix: api
spring:
cloud:
gateway:
routes:
- id: route1
uri: lb://service1
predicates:
- Path=/${prefix}/v0.2/endpoint1/**
filters:
- StripPrefix=1
- id: route2
uri: lb://service2
predicates:
- Path=/${prefix}/v1.0/endpoint2/**
filters:
- StripPrefix=1
如果需要更改前缀,则只需在一个地方更新配置。尽管如此,我还是希望删除每个端点的/${prefix}
重复项以及StripPrefix
对应部分。
最终,我的路线定义如下所示:
prefix: api
spring:
cloud:
gateway:
routes:
- id: route1
uri: lb://service1
predicates:
- Path=/v0.2/endpoint1/**
- id: route2
uri: lb://service2
predicates:
- Path=/v1.0/endpoint2/**