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

OpenAPI 3.0如何绑定布尔查询参数到指定示例实现Swagger动态Mock

解决方案

SwaggerHub(你使用的swagger.com在线平台)的Mock服务完全支持按请求参数自动匹配返回对应的响应示例,你只需要在现有OpenAPI schema的基础上补充少量扩展配置即可实现需求。

具体修改方法

给/vans接口200响应下定义的两个示例,增加SwaggerHub可识别的参数匹配规则扩展字段x-mock-parameters即可,核心修改部分如下:

paths:
  /vans:
    get:
      # 其他原有配置保持不变
      responses:
        "200":
          description: "Ok"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Vans"
              examples:
                buffer_only_vans:
                  $ref: "#/components/examples/default_vans"
                  # 匹配all_system_vans为false或未传值(null)的请求
                  x-mock-parameters:
                    all_system_vans: [false, null]
                all_system_vans:
                  $ref: "#/components/examples/all_system_vans-is-true"
                  # 匹配all_system_vans为true的请求
                  x-mock-parameters:
                    all_system_vans: true
        # 400、404响应配置保持不变

生效后匹配规则

修改配置保存后,Mock服务会自动按以下规则返回内容:

  • 请求未携带all_system_vans参数,或参数值为false时,返回default_vans对应的示例
  • 请求携带all_system_vans=true时,返回all_system_vans-is-true对应的示例

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 22:54:06