Выбор ответа Junior HTTP: методы, статусы, заголовки обновлено

Безопасный метод и идемпотентный: разница

Вопрос

Чем безопасный метод отличается от идемпотентного?

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

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

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

Коротко

Правильный ответ: Безопасный не меняет состояние, идемпотентный может, но повтор не меняет итог. Безопасные методы (GET, HEAD, OPTIONS) только читают.

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

  1. Это синонимы: оба термина значат, что запрос не меняет данные на сервере
  2. Безопасный метод работает только по HTTPS, а идемпотентный и по обычному HTTP
  3. Идемпотентный метод всегда возвращает одинаковый ответ при каждом повторе
  4. Безопасный не меняет состояние, идемпотентный может, но повтор не меняет итогправильный ответ

Разбор

Безопасные методы (GET, HEAD, OPTIONS) только читают. Идемпотентные (ещё и PUT, DELETE) могут менять состояние, но N повторов равны одному. Это не синонимы: DELETE идемпотентен, но не безопасен. HTTPS к понятию отношения не имеет. Одинаковый ответ не требуется: повторный DELETE может вернуть 404 вместо 204, а эффект на сервере тот же.

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

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