路由概述
API 网关在处理收到的请求时,会按照事先配置的路由规则的优先级逐一进行匹配。本文介绍路由的基本概念、匹配规则等。
什么是路由
路由是 API 网关将客户端请求精准转发到后端服务的核心规则。当客户端请求到网关后,网关将依据路由配置中定义的优先级、路径、请求头、请求参数等信息,把请求按照路由绑定的 Upstream 转发至后端服务,并在转发过程中按照路由策略对请求或响应进行处理。
存在多条路由规则时,按照 自定义优先级 > 路径(Path)> 请求头(Header)> 请求参数(Query)> 创建时间 的优先级从高到低依次进行排序,详细规则如下:
- 根据 自定义优先级 进行判断:取值范围为 0~100,数字越小优先级越高,默认为 100。
- 匹配规则 不同时:精确匹配 > 前缀匹配 > 正则匹配。
- 匹配规则 相同时:路径(Path) 字符串越长优先级越高。
- 根据 请求头(Header) 的键值对总数进行判断:总数越大则优先级越高。
- 根据 请求参数(Query) 的键值对进行判断:总数越大则优先级越高。
- 根据 创建时间 进行判断:创建时间越早则优先级越高。
路由匹配方式
API 网关提供了两种优先级配置方式,创建时间于 2024 年 6 月 14 日前的网关默认使用 v1 版本匹配逻辑,2024 年 6 月 14 日后的网关默认使用 v2 版本匹配逻辑,两种版本的优先级匹配逻辑如下:
注意事项
- v1 版本切换到 v2 版本,需要 提交工单 升级网关。
- v1 版本和 v2 版本都可以开启自定义优先级功能。
- 上下线和自定义优先级是开白功能,如需使用,请 提交工单。
场景说明
当一个请求可以匹配多个规则时,需要定义这些规则的优先级,防止请求只按照最高精准度进行匹配。
仅用作路由生效优先级的说明,实际有且仅有一条路由生效。优先级说明:
- 场景 1 配置 v1 版本匹配规则:优先匹配 route1。因为 route1 创建时间早于 route2。
- 场景 1 配置 v2 版本匹配规则:优先匹配 route2。因为精准匹配精准度高于前缀匹配, route2 精准度高于 route1。其中,route3、route4的匹配条件中需要携带有效 header 信息,因此未命中匹配。
- 场景 2 配置 v1 版本匹配规则:route1 > route2 > route3 > route4。按照创建时间从早到晚排序。
- 场景 2 配置 v1 版本匹配规则:route4 > route3 > route2 > route1。按照精准度从高到低排序。
路由策略是指路由命中后,API 网关在请求转发过程中对请求或响应的处理,一条路由可以同时启用多项路由策略,多项策略间将按照能力协同生效。API 网关当前支持的路由策略如下所示。
最近更新时间:2026.05.28 11:01:58