我使用OpenAPI 3.0.0并希望在Items
中传递requestBody
数组作为参数。我的API定义如下所示:
post:
tags:
- test
summary: Test dummy
operationId: requestBodyTests
requestBody:
description: test the body
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Items'
components:
schemas:
Items:
type: array
items:
$ref: '#/components/schemas/Item'
examples:
- id: bla
text: blubb
- id: bla
text: blubb
Item:
type: object
properties:
id:
type: string
name:
type: string
和请求体模式如下:
为什么它会显示有序图而不是我的普通对象?
有人可以告诉我如何正确制作包含正确项目数组的规范吗?
答案 0 :(得分:0)
模式内的示例使用example
关键字(单数),而不是examples
(复数)。
此外,您的YAML缩进错误 - Items
和Item
必须在schemas
下缩进,示例中的列表项必须具有相同的缩进等。如果您粘贴规范进入http://editor.swagger.io,它会指出语法错误。
这是固定版本:
components:
schemas:
Items:
type: array
items:
$ref: '#/components/schemas/Item'
example: # <------
- id: bla
text: blubb
- id: bla
text: blubb
Item:
type: object
properties:
id:
type: string
name:
type: string