spring cloud gateway routes加载顺序的研究

1. 环境说明

spring cloud gateway版本说明:Spring cloud gateway 版本2.1.5.RELEASE

服务注册发现构件:nacos

2. 配置和问题说明

routes配置文件配置的方式样例:
spring cloud gateway routes加载顺序的研究
问题说明:

当访问接口URL/api/product/开始时,路由会不时的指向IDadmin_route的路由,并非是上个路由product_route。这与我们的期望不一致,导致接口请求产生404错误。

所以这里我得出一个结论,靠route的书写顺写是不能确保路径匹配顺序的。

spring cloud gateway routes加载顺序的研究

3. 解决方案

route配置时,新增order配置项。

注意:order代表的优先级是从小往大排序的,即数值越小,优先级越高。
spring cloud gateway routes加载顺序的研究

4. 过滤器Filter参考手册

类目 优先级
RemoveCachedBodyFilter HIGHEST_PRECEDENCE = Integer.MIN_VALUE
AdaptCachedBodyGlobalFilter HIGHEST_PRECEDENCE = Integer.MIN_VALUE
NettyWriteResponseFilter -1
ForwardPathFilter 0
GatewayMetricsFilter 0
RouteToRequestUrlFilter 10000
``WeightCalculatorWebFilter 10001
LoadBalancerClientFilter 10100
WebsocketRoutingFilter LOWEST_PRECEDENCE -1
NettyRoutingFilter LOWEST_PRECEDENCE =Integer.MAX_VALUE
ForwardRoutingFilter LOWEST_PRECEDENCE =Integer.MAX_VALUE