Ответ
Основные типы HTTP-запросов (методы) и их характеристики:
| Метод | Назначение | Идемпотентность | Безопасность | Тело запроса |
|---|---|---|---|---|
| GET | Получение данных с сервера. | Да | Да | Нет (данные в URL/заголовках) |
| POST | Отправка данных для создания ресурса или выполнения операции. | Нет | Нет | Да |
| PUT | Полное обновление или создание ресурса по известному URI. | Да | Нет | Да |
| PATCH | Частичное обновление ресурса. | Нет* | Нет | Да |
| DELETE | Удаление ресурса. | Да | Нет | Обычно нет |
| HEAD | Получение только заголовков ответа (как у GET). | Да | Да | Нет |
| OPTIONS | Определение поддерживаемых методов для ресурса. | Да | Да | Нет |
Почему это важно: Правильный выбор метода обеспечивает семантическую ясность API, влияет на кэширование и поведение клиентов.
Пример GET и POST на JavaScript (Fetch API):
// GET запрос
fetch('https://api.example.com/users/1')
.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: 'John', age: 30 })
});