Могут ли свойства и дополнительные свойства иметь нулевое значение в Swagger 2.0? - PullRequest
0 голосов
/ 26 апреля 2018
"DogRequest"{
  "type": "object",
  "properties": {
    "height": {
      "type": "string"
     }
  }
}


"DogResponse"{
  "type": "object",
  "properties": {
    "bark": {
      "type": "string"
     }
  }
}

Обратите внимание, что у меня не определены обязательные свойства.

Я заметил, что при отправке запроса у меня может быть высота = Нет

Однако в моем ответе, если bark = None, swagger выдает ошибку проверки, что None не относится к типу "string".

Какое правило для свойств (и дополнительных свойств) быть нулевыми, ДАЖЕ, если они не определены как требуемые?

Я заметил, что для свойств, определенных как обязательные, должно быть так, что они существуют И не являются нулевыми. И если я хочу разрешить свойству быть нулевым, я должен включить «x-nullable»: true.

Нужно ли включать "x-nullable": true для свойств, которые также не требуются?

Почему я вижу несоответствие?

1 Ответ

0 голосов
/ 26 апреля 2018

OpenAPI 2.0 не поддерживает null в качестве типа данных. Некоторые инструменты используют x-nullable: true для обработки значений NULL, но это не является частью спецификации OpenAPI, поэтому будет ли она работать, зависит от используемых вами инструментов.

Добавлена ​​поддержка null в OpenAPI 3.0, где свойства могут быть помечены как nullable: true.

...