Выбор ответа Middle JSON и JSON Schema обновлено

additionalProperties

Вопрос

Что делает "additionalProperties": false в схеме объекта?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Запрещает поля, не описанные в properties (и patternProperties). По умолчанию лишние поля разрешены.

Варианты ответа

  1. Делает все поля необязательными, даже перечисленные в required
  2. Запрещает поля, не описанные в properties (и patternProperties)правильный ответ
  3. Разрешает null в любом поле, у которого не задан тип явно
  4. Запрещает вложенные объекты и массивы внутри описанных полей

Разбор

По умолчанию лишние поля разрешены. С false схема упадёт, если бэкенд начал отдавать незадокументированное поле, например passwordHash: так ловят утечки и расхождения с документацией. Минус: тест становится хрупким к любому новому полю, поэтому строгость выбирают осознанно.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.