Swagger 如何在OpenAPI 2.0中为同一操作定义path和formData参数?

Swagger 如何在OpenAPI 2.0中为同一操作定义path和formData参数?,swagger,swagger-2.0,openapi,swagger-editor,Swagger,Swagger 2.0,Openapi,Swagger Editor,我有一个图像上传端点,看起来像/test/{id}/relationships/image。我想用OpenAPI2.0(Swagger 2.0)来描述这个端点 端点同时具有path和formData参数。我尝试了以下方法: swagger:'2.0' 信息: 标题:API 版本:1.0.0 主机:api.server.de 计划: -https 生产: -应用程序/json 路径: “/test/{id}/relationships/image”: 职位: 操作ID:addImage 消耗: -

我有一个图像上传端点,看起来像
/test/{id}/relationships/image
。我想用OpenAPI2.0(Swagger 2.0)来描述这个端点

端点同时具有path和formData参数。我尝试了以下方法:

swagger:'2.0'
信息:
标题:API
版本:1.0.0
主机:api.server.de
计划:
-https
生产:
-应用程序/json
路径:
“/test/{id}/relationships/image”:
职位:
操作ID:addImage
消耗:
-多部分/表单数据
参数:
-在:路径
姓名:id
必填项:true
模式:
类型:整数
格式:int32
-in:formData
名称:文件
类型:文件
必填项:true
描述:要上载的文件。
-in:formData
名称:元数据
类型:字符串
必填项:false
描述:文件内容的描述。
响应:
'202':
描述:上传
但“大摇大摆”编辑器显示错误:

上的架构错误 路径['/test/{id}/relationships/image'].post.parameters[0]。中的 等于允许值allowedValues中的一个:body、header、, formData,查询跳转到第17行

上的架构错误 路径['/test/{id}/relationships/image']。post.parameters[0]不应 具有其他属性additionalProperty:schema、in、name、, 必须跳到17号线


我做错了什么?

在路径参数中,更改

          schema:
            type: integer
            format: int32


在OpenAPI/Swagger 2.0中,path、header、query和formData参数直接使用
type
,而不使用
schema
schema
关键字仅用于正文参数。

非常感谢,这很有帮助。这很奇怪,因为这些文档在“/users/{id}:”示例中说了一些不同的东西,在这个示例中,它还使用了那些文档用于OpenAPI 3.0的模式参数,如顶部的注释所示。2.0版本是swagger.io/docs/specification/2-0/paths-and-operations/,虽然我想要的是相反的方式,但它帮助了我:)我在3.0上
          type: integer
          format: int32