Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про JavaScript: HTTP methods, GET, POST, PUT, DELETE, REST

Какие HTTP-методы существуют?

Вопрос проверяет знание основных HTTP-методов, их назначения и семантики, что необходимо для корректного проектирования RESTful API и понимания взаимодействия клиента с сервером.

Короткий ответ

HTTP-методы (или глаголы) определяют действие, которое клиент хочет выполнить с ресурсом на сервере. Основные методы: GET для получения данных, POST для создания нового ресурса, PUT для полного обновления существующего ресурса, DELETE для его удаления. Дополнительные методы, такие как PATCH (частичное обновление), HEAD (получение заголовков) и OPTIONS (опрос поддерживаемых методов), расширяют возможности протокола. Понимание этих методов — основа для работы с веб-API.

Длинный ответ

HTTP-методы, также называемые глаголами, являются ключевой частью протокола HTTP и определяют тип операции, которую клиент запрашивает у сервера для конкретного ресурса (например, веб-страницы, данных пользователя). Их правильное использование лежит в основе архитектурного стиля REST, который широко применяется при построении веб-сервисов и API.

Основные методы

Следующие методы используются наиболее часто:

  • GET: Запрашивает представление ресурса. Должен быть безопасным (не изменять состояние сервера) и идемпотентным (повторные запросы дают тот же результат). Используется для чтения данных.
  • POST: Используется для отправки данных на сервер, часто для создания нового ресурса. Не является ни безопасным, ни идемпотентным. Повторная отправка одного и того же запроса POST может создать несколько ресурсов.
  • PUT: Используется для полного обновления ресурса по указанному URI. Если ресурс не существует, сервер может его создать. Метод PUT является идемпотентным: многократное выполнение одного и того же запроса оставляет ресурс в том же состоянии.
  • DELETE: Удаляет указанный ресурс. Также является идемпотентным.

Другие важные методы

  • PATCH: Применяется для частичного обновления ресурса. В отличие от PUT, отправляются только изменяемые поля.
  • HEAD: Аналогичен GET, но сервер возвращает только заголовки ответа без тела. Полезен для проверки наличия ресурса или его метаданных.
  • OPTIONS: Опрашивает сервер о методах, поддерживаемых для указанного ресурса.
  • CONNECT, TRACE: Используются реже, для установки туннеля или диагностики.

Пример использования в коде

Вот пример на JavaScript с использованием Fetch API, демонстрирующий разные методы:

// GET запрос для получения списка пользователей
fetch('https://api.example.com/users')
  .then(response => response.json())
  .then(data => console.log(data));

// POST запрос для создания нового пользователя
fetch('https://api.example.com/users', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ name: 'Alice', age: 30 })
});

// PUT запрос для полного обновления пользователя с id=1
fetch('https://api.example.com/users/1', {
  method: 'PUT',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ name: 'Bob', age: 25 })
});

// DELETE запрос для удаления пользователя с id=1
fetch('https://api.example.com/users/1', { method: 'DELETE' });

В контексте RESTful API, ресурсы (например, /users) идентифицируются через URI, а методы HTTP определяют действия над ними. Это обеспечивает единообразный и предсказуемый интерфейс.

Вывод: Понимание и правильное применение HTTP-методов критически важно для разработки чистых, понятных и эффективных веб-API, особенно при следовании принципам REST. GET и POST используются чаще всего, но для полноценного CRUD (Create, Read, Update, Delete) необходимы также PUT/PATCH и DELETE.

Уровень

  • Рейтинг:

    4

  • Сложность:

    2

Навыки

  • JavaScript

    JavaScript

  • Node.js

    Node.js

Ключевые слова

#HTTP methods

#GET

#POST

#PUT

#DELETE

#REST

Подпишись на Java Developer в телеграм