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
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.