Методы HTTP-запросов
Методы HTTP-запросов определяют способ взаимодействия между клиентом и сервером.
Согласно стандарту HTTP, HTTP-запросы могут использовать несколько методов запроса.
Ниже приведён список распространённых методов HTTP-запросов:
| Порядковый номер | Метод | Описание |
|---|---|---|
| 1 | GET | Получение ресурсов с сервера. Используется для запроса данных без их изменения. Например, загрузка веб-страниц, изображений и т. д. с сервера. |
| 2 | POST | Отправка данных на сервер для создания нового ресурса. Обычно используется для отправки данных формы или загрузки файлов. Отправленные данные включаются в тело запроса. |
| 3 | PUT | Отправка данных на сервер для обновления существующего ресурса. Если ресурс не существует, создайте новый. В отличие от POST, PUT обычно идемпотентен, то есть многократное выполнение одного и того же PUT-запроса не приведёт к разным результатам. |
| 4 | DELETE | Удаление указанного ресурса с сервера. Запрос содержит идентификатор удаляемого ресурса. |
| 5 | PATCH | Выполнение частичного изменения ресурса. Аналогично PUT, но PATCH изменяет только часть данных, а не заменяет весь ресурс. |
| 6 | HEAD | Аналогично GET, но сервер возвращает только заголовки ответа, а не сами данные. Используется для проверки метаданных ресурса (например, проверить, существует ли ресурс, просмотреть информацию в заголовках ответа). |
| 7 | OPTIONS | Возвращает методы HTTP, поддерживаемые сервером. Используется для проверки того, какие методы запросов поддерживает сервер, обычно для предварительных запросов при совместном использовании ресурсов между разными источниками (CORS). |
| 8 | TRACE | Возвращает запрос, полученный сервером, обратно, в основном для диагностики. Клиент может просмотреть путь обработки запроса на сервере. |
| 9 | CONNECT | Устанавливает туннель к серверу, обычно используется для HTTPS-соединений. Клиент может отправлять зашифрованные данные через этот туннель. |
Методы запросов, определённые каждой версией
HTTP/1.0
В HTTP/1.0 были определены следующие три метода запросов:
- GET- Запросить указанный ресурс.
- POST- Отправить данные для обработки запроса.
- HEAD- Запросить информацию о заголовках ответа ресурса.
HTTP/1.1
В HTTP/1.1 были введены дополнительные методы:
- GET- Запросить указанный ресурс.
- POST- Отправить данные для обработки запроса.
- HEAD- Запросить информацию о заголовках ответа ресурса.
- PUT- Загружать файлы или обновлять ресурсы.
- DELETE- Удалить указанный ресурс.
- OPTIONS- Запросить список методов запросов, поддерживаемых сервером.
- TRACE— возвращает запрос, полученный сервером, в основном для диагностики.
- CONNECT— устанавливает туннель для связи с прокси-сервером, обычно используется для HTTPS.
HTTP/2
HTTP/2 в основном следует методам HTTP/1.1, но оптимизирует протокол для повышения эффективности и скорости передачи. HTTP/2 также вводит новые возможности, такие как мультиплексирование, сжатие заголовков и серверный push.
HTTP/3
HTTP/3 реализован на основе протокола QUIC и продолжает использовать методы HTTP/2. HTTP/3 в основном улучшает транспортный уровень, используя UDP вместо TCP для повышения скорости и надёжности передачи.
Другие расширения