HTTP (HyperText Transfer Protocol)¶
HTTP — гипертекстовый протокол передачи данных.
Это протокол прикладного уровня, используемый для передачи данных в интернете. Основная модель взаимодействия — клиент-сервер: клиент (например, браузер) отправляет HTTP-запрос, сервер отвечает HTTP-ответом.
Основные характеристики HTTP¶
- Протокол без сохранения состояния (stateless)
- Основан на запросах и ответах
- Использует TCP-порт 80 (HTTP) или 443 (HTTPS)
Методы HTTP¶
| Метод | Назначение |
|---|---|
| GET | Получение данных |
| POST | Отправка данных на сервер |
| PUT | Замена ресурса |
| PATCH | Частичное обновление ресурса |
| DELETE | Удаление ресурса |
| HEAD | Получение заголовков ответа |
| OPTIONS | Получение поддерживаемых методов |
Структура HTTP-запроса¶
HTTP-запрос состоит из:
- Стартовой строки запроса
Формат:
Пример:<Метод> <Путь к ресурсу> <Версия HTTP>
GET /index.html HTTP/1.1 - Заголовки (headers)
Передают дополнительную информацию (мета-данные).
Пример:
Host: example.com User-Agent: Mozilla/5.0 Accept: text/html -
Пустая строка
Разделяет заголовки и тело запроса (если есть). -
Тело запроса (необязательно)
Используется, например, в POST/PUT-запросах для передачи данных.
Пример (тело в формате JSON):
{ "username": "user1", "password": "1234" }
Пример полного HTTP-запроса (POST)¶
POST /login HTTP/1.1
Host: example.com
Content-Type: application/json
Content-Length: 47
{
"username": "user1",
"password": "1234"
}
Полезные ресурсы¶
Дополнительные материалы: