Sobes.tech
Назад к вопросам
Senior
5

Расскажите про HTTP-методы: какие знаете, чем отличаются PUT от POST, GET от POST, зачем нужен PATCH?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

HTTP-методы определяют тип операции, которую клиент хочет выполнить с ресурсом на сервере:

  • GET — запрос на получение данных. Безопасный и идемпотентный метод, не должен изменять состояние сервера.
  • POST — отправка данных на сервер для создания нового ресурса или выполнения операции. Не идемпотентен.
  • PUT — замена существующего ресурса или создание, если его нет. Идемпотентен (повторные запросы дают тот же результат).
  • PATCH — частичное обновление ресурса, изменяет только указанные поля.
  • DELETE — удаление ресурса.

Отличия PUT от POST:

  • PUT обычно используется для обновления или создания ресурса по известному URI, запрос идемпотентен.
  • POST используется для создания ресурса, URI может быть не фиксирован, запрос не идемпотентен.

Отличия GET от POST:

  • GET запрашивает данные, параметры передаются в URL, безопасен и идемпотентен.
  • POST отправляет данные в теле запроса, используется для создания или изменения данных, не идемпотентен.

Зачем нужен PATCH:

  • PATCH позволяет обновлять только часть ресурса, что эффективнее, чем отправлять весь объект через PUT, особенно при больших данных.

Пример использования PATCH:

PATCH /users/123 HTTP/1.1
Content-Type: application/json

{"email": "newemail@example.com"}