PUT

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Метод запроса HTTP PUT создаёт новый ресурс или заменяет представление целевого ресурса данными, представленными в теле запроса.

Разница между PUT и POST в том, что PUT является идемпотентным, т.е. единичный и множественные вызовы этого метода, с идентичным набором данных, будут иметь тот же результат выполнения (без сторонних эффектов), в случае с POST, множественный вызов с идентичным набором данных может повлечь за собой сторонние эффекты.

Запрос имеет тело Да
Успешный ответ имеет тело Нет
Безопасный Нет
Идемпотентный Да
Кешируемый Нет
Допускается в HTML-формах Нет

Синтаксис

PUT /new.html HTTP/1.1

Пример

Запрос

PUT /new.html HTTP/1.1
Host: example.com
Content-type: text/html
Content-length: 16

<p>Новый файл</p>

Ответ

Если целевой ресурс не содержит отправляемой сущности и PUT запрос создаёт её, то сервер должен проинформировать клиентское приложение о создании, отправив в ответ 201 (Created).

HTTP/1.1 201 Created
Content-Location: /new.html

Если целевой ресурс содержит отправляемую сущность и сущность была успешно мутирована (обновлена), в соответствии с прилагаемыми в теле запроса данными, то сервер должен отправить или 200 (OK), или 204 (No Content) для информирования об успешном завершении запроса.

HTTP/1.1 204 No Content
Content-Location: /existing.html

Спецификации

Спецификация Заголовок
RFC 7231, раздел 4.3.4: PUT Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также