методы запроса

Методы запроса протокола HTTP

В этой заметке вы найдете ответы на следующие вопросы:

Что такое идемпотентность?

Метод запроса уведомляет сервер, какое действие следует выполнить над ресурсом, идентифицируемым URI, указанным в строке запроса.

    Метод Краткое описание
  1. GET Простой запрос ресурса
  2. HEAD Запрос только заголовков сообщения
  3. POST Запрос с содержимым (отправка данных)
  4. PUT Создание и изменение ресурса
  5. DELETE Удаление ресурса
  6. OPTIONS Запрос параметров сервера
  7. TRACE Трассировка сообщения
  8. CONNECT Создание туннеля между двумя прокси-серверами

В данном разделе будут подробно описаны все эти методы. Но пока эта работа не завершена. Если в таблице (см. выше) метод не имеет ссылки, значит он еще не описан.

Двумя важнейшими характеристиками методов являются безопасность и идемпотентность.

Безопасным является лишь тот метод, который осуществляет по отношению к ресурсу только операцию чтения. Метод, который способен изменить состояние ресурса, не является безопасным. Небезопасными являются методы POST, PUT и DELETE.

Идемпотентность метода подразумевает идентичность возвращаемого результата для любой последовательности запросов идемпотентным методом, а все побочные эффекты таких запросов должны быть одинаковыми. Поэтому ответы на неидемпотентные методы не кэшируются. Единственным неидемпотентным методом является метод POST.

Не все серверы поддерживают все существующие методы запроса. Более того, даже в пределах одного сервера поддержка методов относительно разных ресурсов может отличаться. Для получения информации о поддерживаемых методах в протоколе HTTP существует два заголовка ответа: Allow и Public
Allow - дает информацию о поддержке методов для конкретного ресурса
Public - дает информацию о поддержке методов для всего сервера