Определение перечисления для массива в Swagger 2.0
type": "array",
"items": {
"type": "string",
"enum": ["MALE","FEMALE","WORKER"]
}
или
type": "array",
"items": {
"type": "string",
},
"enum": ["MALE","FEMALE","WORKER"]
?
ничего в спецификации об этом. Цель, конечно, получить swagger-ui, чтобы показать значения перечисления.
2 ответов
первый случай правильный, и в эти дни swagger-ui генерирует множественный выбор значений перечисления.
это будет зависеть от того, что вы хотите перечисления:
каждое значение перечисления должно иметь описываемый тип объекта
- в первом случае строку
- во втором один массив String
первый синтаксис означает это возможные значения строки в этом массиве
AnArray:
type: array
items:
type: string
enum:
- MALE
- FEMALE
- WORKER
этот массив может содержать несколько строк, но каждая строка должна иметь мужской, женский или рабочий значение.
вторая означает это возможные значения этого массива
AnotherArray:
type: array
items:
type: string
enum:
-
- FEMALE
- WORKER
-
- MALE
- WORKER
каждого значения enum-это массив. В этом примере этот массив может иметь только возможное значение ["женский", "рабочий"] и ["мужской","рабочий"].
к сожалению, даже если этот синтаксис допустим, никакие значения перечисления не отображаются в Swagger UI.