我想将图片上传到我的API端点。
端点应为/test/{id}/relationships/image
。
我想同时用swagger path和formData参数进行描述。
我的swagger yaml文件如下所示:
swagger: '2.0'
info:
title: API
version: 1.0.0
host: api.server.de
schemes:
- https
produces:
- application/json
paths:
'/test/{id}/relationships/image':
post:
operationId: addImage
consumes:
- multipart/form-data
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int32
- in: formData
name: file
type: file
required: true
description: The file to upload.
- in: formData
name: metadata
type: string
required: false
description: Description of file contents.
responses:
'202':
description: Uploaded
但是我收到了一个错误:
架构错误 路径[' / test / {id} / relationships / image'] .post.parameters [0] .in should 等于允许值之一allowedValues:body,header, formData,query跳转到第17行
架构错误 路径[' / test / {id} / relationships / image'] .post.parameters [0]不应该 有额外的属性additionalProperty:schema,in,name, 必需跳转到第17行
我错了什么?
答案 0 :(得分:16)
在路径参数中,更改
schema:
type: integer
format: int32
到
type: integer
format: int32
在OpenAPI / Swagger 2.0中,path,header,query和formData参数直接使用type
,而不使用schema
。 schema
关键字仅用于身体参数。