Uri 模板匹配配置 (proto)

此扩展的限定名称为 envoy.path.match.uri_template.uri_template_matcher

注意

此扩展旨在针对不受信任的下游和上游流量具有鲁棒性。

提示

此扩展扩展了以下扩展类别,并可与其一起使用

此扩展必须配置以下类型 URL 之一

extensions.path.match.uri_template.v3.UriTemplateMatchConfig

[extensions.path.match.uri_template.v3.UriTemplateMatchConfig proto]

如果指定,则路由为模板匹配规则,这意味着 :path 标头(不带查询字符串)必须与给定的 path_template 模式匹配。

路径模板匹配类型

  • * : 匹配单个路径组件,直到下一个路径分隔符:/

  • ** : 匹配零个或多个路径段。如果存在,必须是最后一个运算符。

  • {name} or {name=*} : 匹配一个路径段的命名变量,直到下一个路径分隔符:/。

  • {name=videos/*}一个匹配多个路径段的命名变量。

    匹配 videos/* 的路径组件将被捕获为命名变量。

  • {name=**} : 匹配零个或多个路径段的命名变量。

例如

  • /videos/*/*/*.m4s 将匹配 videos/123414/hls/1080p5000_00001.m4s

  • /videos/{file} 将匹配 /videos/1080p5000_00001.m4s

  • /**.mpd 将匹配 /content/123/india/dash/55/manifest.mpd

{
  "path_template": ...
}
path_template

(string, REQUIRED)