概述
云原生网关支持多种路由匹配规则。彼此之间可以相互组合,路由将会根据所有条件进行“与”的关系匹配。
基于域名的匹配
支持根据请求的域名进行匹配,支持绑定多个域名。也支持类似*.ctyun.com的泛域名。
基于路径的匹配
路径匹配支持精确匹配和前缀匹配模式,云原生网关会优先尝试精确匹配,若无法命中精确匹配,再尝试前缀匹配。
精确匹配
完整匹配给定的路径,如/foo/bar匹配请求路径为/foo/bar的请求。
前缀匹配
末尾使用'*'代表使用前缀匹配,如/foo/bar/*匹配/foo/bar、/foo/bar/baz、/foo/bar/a/b/c等请求。
基于请求方法的匹配
支持根据HTTP请求方法的匹配,例如GET、POST、PUT、DELETE等。可绑定多种请求方法。
基于请求头的匹配
支持根据HTTP请求头进行匹配。多个请求头之间是“与”的匹配关系。
基于请求参数的匹配
支持URL参数进行匹配。多个参数之间是“与”的匹配关系。
基于Cookie的匹配
支持Cookie进行匹配。多个Cookie之间是“与”的匹配关系。
基于参数规整化的匹配
支持从Header、Query或者Cookie中获取参数,可以进一步对参数求哈希值(Java String hashCode方法)、取模等;对于运算的结果支持匹配一组枚举值或者范围;该种匹配方式可用于实现多活容灾路由等场景。