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