# Какие есть HTTP-методы?

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

***

### 1️⃣ **GET**

* **Назначение:** Получение ресурса с сервера.
* **Особенности:**
  * Безопасный и идемпотентный (не изменяет данные).
  * Может содержать параметры в URL (`query string`).
* **Пример:** `GET /users/123` — получить пользователя с ID 123.

***

### 2️⃣ **POST**

* **Назначение:** Создание нового ресурса на сервере.
* **Особенности:**
  * Не идемпотентный (каждый вызов создаёт новый ресурс).
  * Данные передаются в теле запроса (JSON, form-data).
* **Пример:** `POST /users` с телом `{ "name": "John" }` — создать нового пользователя.

***

### 3️⃣ **PUT**

* **Назначение:** Полное обновление существующего ресурса.
* **Особенности:**
  * Идемпотентный (несколько одинаковых запросов дают один результат).
  * Тело запроса содержит полный объект.
* **Пример:** `PUT /users/123` с телом `{ "name": "John", "active": true }` — обновить все поля пользователя.

***

### 4️⃣ **PATCH**

* **Назначение:** Частичное обновление ресурса.
* **Особенности:**
  * Идемпотентный.
  * Тело запроса содержит только изменяемые поля.
* **Пример:** `PATCH /users/123` с телом `{ "active": false }` — изменить только статус активности.

***

### 5️⃣ **DELETE**

* **Назначение:** Удаление ресурса.
* **Особенности:**
  * Идемпотентный.
* **Пример:** `DELETE /users/123` — удалить пользователя с ID 123.

***

### 6️⃣ Дополнительные методы

* **HEAD** — как GET, но возвращает только заголовки без тела.
* **OPTIONS** — возвращает допустимые методы для ресурса (CORS и проверка).
* **CONNECT** — устанавливает туннель (например, для HTTPS через прокси).
* **TRACE** — возвращает путь запроса для отладки.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kaze.gitbook.io/qa-theory/web/kakie-est-http-metody.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
