Різниця між PUT та POST
полягає у тому, що PUT є ідемпотентним: викликаючи його один або кілька разів з одним набором даних продукує той самий результат (тобто немає сторонніх ефектів), у той час, коли, множинні виклики POST можуть мати сторонні ефекти.
Має тіло запиту | Так |
---|---|
Успішна відповідь має тіло | Ні |
Safe | Ні |
Idempotent | Так |
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 запит створює її, сервер має проінформувати клієнтський додаток про створення, відправивши у відповідь 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, section 4.3.4: PUT | 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.
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | Yes | Yes | Yes |
Feature | Android webview | Chrome for Android | Edge mobile | Firefox for Android | Opera Android | iOS Safari | Samsung Internet |
---|---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | Yes | Yes | Yes | Yes |