Я только начинаю использовать редактор swagger для определения моего RESTful API, и я запутался в ответах. Многие из моих методов просто возвращают массив целых чисел, и я не понимаю, как указать это в YAML.
Массив Swagger целочисленного возвращаемого типа
Ответы (1)
Спецификация OpenAPI (fka Swagger) 2.0 использует подмножество JSON Schema v4. Вы можете обратиться к документам по схеме JSON или это отличное руководство, чтобы узнать, как описывать различные типы данных с помощью схемы JSON. Но имейте в виду, что некоторые функции схемы JSON не поддерживаются или работают по-другому в OpenAPI/Swagger. Спецификация упоминает, что именно поддерживается.
Возвращаясь к вашему вопросу, массив целых чисел определяется как:
type: array
items:
type: integer
Или в контексте ответа:
paths:
/something:
get:
responses:
200:
description: OK
schema:
type: array
items:
type: integer
Если массивы целых чисел используются в нескольких местах вашей спецификации, вы можете определить массив в глобальном разделе definitions
, а затем использовать $ref
для ссылки на него:
paths:
/something:
get:
responses:
200:
description: OK
schema:
$ref: "#/definitions/ArrayOfInt"
definitions:
ArrayOfInt:
type: array
items:
type: integer
Вы также можете указать example
значений для массива. Пользовательский интерфейс Swagger отобразит этот пример, и некоторые инструменты имитации будут использовать его при создании примеров ответов.
definitions:
ArrayOfInt:
type: array
items:
type: integer
example: [1, 2, 3, 4]
# Make sure to put the multi-item "example"
# on the same level as the "type" and "items" keywords
type: array items: type: integer
- person carmelolg; 22.03.2018