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

Swagger Editor路径参数报“Schema error: should NOT have additional properties”错误

修复Swagger Editor的参数Schema错误

这个错误的核心原因是你的参数写法和当前使用的OpenAPI规范版本不匹配,下面分两种情况来解决:

情况1:你使用的是OpenAPI 2.0(文件开头是swagger: '2.0')

如果你的API定义是基于2.0规范的,那你的参数写法本身是正确的。问题出在Swagger Editor的验证模式上:

  • 点击编辑器右上角的版本选择按钮(通常显示当前的规范版本,比如"3.0.3")
  • 切换到2.0版本,重新验证,错误应该就会消失。

情况2:你使用的是OpenAPI 3.0+(文件开头是openapi: 3.0.x或更高)

3.0规范对参数结构做了调整,type、enum这些字段不能直接放在参数节点下,必须嵌套在schema对象里。修改你的参数部分如下:

paths:
  '/some-endpoint/{id}/name-and-address':
    get:
      tags:
        - InvolvedParty
      summary: Retrieve basic information about...
      operationId: getNameAndAddressUsingGET
      produces:
        - '*/*'
      parameters:
        - name: id
          in: path
          description: The unique identification
          required: true
          allowEmptyValue: false  # 路径参数建议移除这个字段,因为路径参数不能为空
          schema:
            type: string
            enum:
              - '@coderange[1'
              - 'infinity]'
      responses:
        '200':
          description: Success

额外提醒

  • 路径参数的allowEmptyValue属性实际上没有作用,因为URL路径中的参数不能为空(否则路径本身就无效),所以可以考虑删除这个字段。
  • 你的enum值格式看起来有点奇怪(比如@coderange[1),建议检查是否是输入错误,比如是否应该写成@coderange[1, infinity]这类完整的范围表达式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:17:58