POST не имеет общей гарантии идемпотентности, PATCH тоже не является идемпотентным по определению. Однако конкретную PATCH- или POST-операцию можно спроектировать идемпотентной.
Можешь назвать неидемпотентные HTTP-методы?
POST не имеет общей гарантии идемпотентности, PATCH тоже не является идемпотентным по определению. Однако конкретную PATCH- или POST-операцию можно спроектировать идемпотентной.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
POST не имеет общей гарантии идемпотентности, PATCH тоже не является идемпотентным по определению. Однако конкретную PATCH- или POST-операцию можно спроектировать идемпотентной.
Например, PATCH «увеличить счётчик на 1» изменяет результат при каждом повторе, а «установить имя в X» может быть идемпотентным. Для защиты от повторов используют условные запросы или прикладной ключ операции. Нельзя классифицировать идемпотентность только по тому, меняет ли метод данные: PUT и DELETE меняют, но имеют идемпотентную семантику.
Источник: www.rfc-editor.org.