我使用的是配置模式。其中是多(20(条路线。但是我的服务器可以在URL PATH前缀后面访问http://prefixHere/method:port?property=value由于防火墙,这一点无法更改。
因此,当我有20个不同的方法(每个方法都以其他服务结束(时,我必须定义20次。
我只想定义一次StripPrefix。这是在以前的祖尔网关工作。如何在云网关?
这是我的配置:
spring:
cloud:
gateway:
discovery:
locator:
lower-case-service-id: true
enabled: true
routes:
- id: auth-service
uri: lb://server-auth
predicates:
- Path=/prefixHere/auth/**
filters:
**- StripPrefix=1**
- id: operation-service
uri: lb://operation-service
predicates:
- Path=/prefixHere/operation/**
filters:
**- StripPrefix=1**
是,使用"默认过滤器:">,它将同时应用于所有路由。
spring:
application:
name: gateway
cloud:
gateway:
default-filters:
- StripPrefix=1
例如:
spring:
application:
name: GATEWAY-SERVICE
cloud:
gateway:
default-filters:
- StripPrefix=1
discovery:
locator:
enabled: true
lowerCaseServiceId: true
routes:
- id: department-service
uri: lb://department-service
predicates:
- Path=/api/departments/**
- id: user-service
uri: lb://USER-SERVICE
predicates:
- Path=/api/users/**
参考资料:春季云网关简介