--- title: PUT slug: Web/HTTP/Methods/PUT tags: - HTTP - HTTP методы - Метод запроса - Справка translation_of: Web/HTTP/Methods/PUT ---
Разница между PUT
и {{HTTPMethod("POST")}} в том, что PUT
является идемпотентным, т.е. единичный и множественные вызовы этого метода, с идентичным набором данных, будут иметь тот же результат выполнения (без сторонних эффектов), в случае с POST
, множественный вызов с идентичным набором данных может повлечь за собой сторонние эффекты.
Запрос имеет тело | Да |
---|---|
Успешный ответ имеет тело | Нет |
{{Glossary("Safe", "Безопасный")}} | Нет |
{{Glossary("Idempotent", "Идемпотентный")}} | Да |
{{Glossary("Cacheable", "Кэшируемый")}} | Нет |
Допускается в 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
запрос создает ее, то сервер должен проинформировать клиентское приложение о создании, отправив в ответ {{HTTPStatus("201")}} (Created
).
HTTP/1.1 201 Created Content-Location: /new.html
Если целевой ресур содержит отправляемую сущность и сущность была успешно мутирована (обновлена), в соответствии с прилагаемыми в теле запроса данными, то сервер должен отправить или {{HTTPStatus("200")}} (OK
), или {{HTTPStatus("204")}} (No Content
) для информирования об успешном завершении запроса.
HTTP/1.1 204 No Content Content-Location: /existing.html
Спецификация | Заголовок |
---|---|
{{RFC("7231", "PUT", "4.3.4")}} | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |
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.
{{Compat("http.methods.PUT")}}