spring cloud gateway routes加载顺序的研究

1. 环境说明

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

服务注册发现构件:nacos

2. 配置和问题说明

routes配置文件配置的方式样例: 问题说明:

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

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

3. 解决方案

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

注意:order代表的优先级是从小往大排序的,即数值越小,优先级越高。

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
经验分享 程序员 微信小程序 职场和发展