You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

KrakenD已配置/city固定子路径时如何设置catchall兜底匹配端点?

KrakenD catchall类型端点配置方法

KrakenD原生支持catchall/fallback类型端点,可通过路径通配符+匹配优先级规则实现你的需求,具体方案如下:

核心规则

KrakenD的端点匹配遵循精确匹配优先级高于通配符匹配的逻辑,你已定义的/city/toronto、/city/vancouver两个精确路径优先级始终高于后续配置的通配符路径,不会被通配符覆盖。

具体配置

你只需要在端点列表最后新增路径为/city/*的通配符端点,即可捕获所有/city/前缀下未被精确匹配的请求,将其转发到你需要的/city/other上游端点即可。
参考配置示例:

endpoints:
  # 原有精确匹配端点,优先级最高
  - endpoint: /city/toronto
    backend:
      - url_pattern: /toronto/upstream/path
        host: ["http://your-upstream-host"]
  - endpoint: /city/vancouver
    backend:
      - url_pattern: /vancouver/upstream/path
        host: ["http://your-upstream-host"]
  # 新增catchall通配符端点,仅匹配未命中上述精确规则的请求
  - endpoint: /city/*
    backend:
      - url_pattern: /city/other
        host: ["http://your-upstream-host"]

补充说明

  • 通配符*仅支持放在路径的末尾位置,不支持中间插入(比如/city/*/info为非法配置),你的场景完全符合使用要求。
  • 如果你需要将通配符捕获到的城市名传递给上游,可使用{*}占位符引用匹配内容,比如要将城市名作为查询参数传递时,可将后端url_pattern修改为/city/other?city={*}。
  • 如果你需要配置全局fallback,捕获所有未命中任何端点的请求,直接配置endpoint: "/*"的端点即可,该端点优先级为全局最低。

内容的提问来源于stack exchange,提问作者Billy Billy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 23:06:02