Spring网关-如何只为所有路由剥离一次前缀



我使用的是配置模式。其中是多(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/**

参考资料:春季云网关简介

相关内容

  • 没有找到相关文章

最新更新