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 |