More flexible path matching (such as file extensions and logical or)
#672 aberto em 22 de nov. de 2018
Métricas do repositório
- Stars
- (4.284 stars)
- Métricas de merge de PR
- (Mesclagem média 1d 21h) (18 fundiu PRs em 30d)
Description
Bug report
spring-cloud-version: Finchley.SR2
I has a requirement that route www.example.com/**/*.html to lb://serviceNodeJs, and route www.example.com/** to lb://serviceJava,
so I wrote the following yaml file:
spring:
cloud:
gateway:
routes:
- id: test1
uri: lb://serviceNodeJs
predicates:
- Host=www.example.com
- Path=/**/*.html
- id: test2
uri: lb://serviceJava
predicates:
- Host=www.example.com
- Path=/**
But when I browse http://www.example.com/index.html, it is routed to lb://serviceJava,
my idea is that all the requests with the .html postfix being routed to lb://serviceNodeJs, and all the others being routed to lb://serviceJava, And I have also read the source code PathRoutePredicateFactory, I found that it use a new class PathPattern to test if it matches. If I use AntPathMatcher, it can support my requirement. so can PathPattern changed to meet this requirement?