Корзина

В вашем заказе пока нет услуг

Начните с выбора домена

Выбрать домен
Рекомендуем
Лайт Виртуальный хостинг 1 месяц
GlobalSign AlphaSSL Сертификаты 199 дней
Выберите способ авторизации

Остались вопросы?
Мы с удовольствием вам поможем
Проверьте корректность введённого поля
Проверьте корректность введённого поля
Проверьте корректность введённого поля
Проверьте корректность введённого поля
Заказать звонок
Проверьте корректность введённого поля
Проверьте корректность введённого поля
Проверьте корректность введённого поля
Проверьте корректность введённого поля
Проверьте корректность введённого поля
администрирование

Методы, заголовки и коды состояния — рассказываем о ключевых элементах HTTP-запросов

Пользователи взаимодействуют с сайтами, приложениями и другими сервисами при помощи HTTP-протокола. Рассказываем, как это работает и какие при этом используются элементы HTTP-запросов.
01.04.2025
10 мин. читать


Структура HTTP-сообщений

HTTP (HyperText Transfer Protocol) — это протокол передачи данных, при помощи которого пользователи взаимодействуют с различными ресурсами. Для этого используется клиент-серверная структура, где: 

  • клиент — это устройство и программное обеспечение, с которых пользователь отравляет запрос;

  • сервер — программно-аппаратное устройство, обрабатывающее этот запрос. 

HTTP-сообщения состоят из стартовой строки, заголовков, пустой строки и опционально — тела сообщения. Стартовая строка содержит методы, URL, версию протокола, код статуса и другие элементы. 

Допустим, пользователь запускает на телефоне сайт — это уже запрос. А затем он заполняет форму заявки, например на странице администрирования, и отправляет данные на сервер. Тогда тело HTTP-сообщения будет включать соответствующую информацию: ФИО, почту и номер телефона. 

Сервер обрабатывает запрос и затем выдает определенный ответ с аналогичной структурой: стартовой строкой, заголовками и телом сообщения. Первая строка ответа — строка статуса — содержит версию протокола, код состояния и пояснение.


Методы HTTP-запросов 

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

  • GET. Используется при чтении данных, например открытии страниц сайта или просмотре разделов приложения. 

  • POST. Применяется для отправки данных на сервер, например заполненных форм, или загрузки изображений и PDF-файлов. 

  • HEAD. Если GET в ответ на свой запрос ожидает сообщение с заголовком и телом, то HEAD запрашивает только заголовки. Благодаря этому можно узнать размер ресурса до его загрузки. 

  • PUT. Используется для обновления текущих и создания новых файлов на сервере. В отличие от POST обновляет данные, а не создает их копии. Например, с помощью PUT можно изменить документы или информацию о пользователях.

  • DELETE. Удаляет файлы с сервера. Требует осторожного применения и внимательной настройки, так как может привести к потере критически важных данных и использоваться злоумышленниками при эксплуатации уязвимостей сервиса.

  • OPTIONS. Запрашивает информацию о сервере, например о поддерживаемых HTTP-методах.

  • PATCH. Обновляет данные. В отличие от PUT позволяет сделать это частично, а не целиком. 


Адрес ресурса 

В HTTP-запросах URL содержит адрес страницы и другие параметры. 

Scheme — указывает формат протокола и выражается двумя наклонными чертами ://. Напомним, если на ресурсе установлен SSL-сертификат, то к протоколу добавляется буква s, и он принимает вид https://

Host — указывает домен или IP-адрес ресурса. 

Port — содержит номер порта. Если этот параметр не задан, указывает значение по умолчанию для версии протокола: например, 80 — для http://

Path — содержит путь к конкретной странице ресурса. Например, /service/solutions/administration/ — это путь в адресе нашей услуги IT-сопровождения. Если поле Path не задано, сервер укажет индексную страницу index.html или другое значение по умолчанию. 

Query String — параметр URL, который начинается со знака вопроса (?) и указывается в формате «ключ-значение». Например, это могут быть utm-метки рекламной компании: ?utm_source=site&?utm_campaign=best_product


HTTP-заголовки

Заголовок выражается в формате «ключ-значение» c разделением двоеточием. Название заголовка не чувствительно к регистру, однако каждое его слово принято писать с большой буквы:

  • Host: example.com

  • Accept-Language: en-US 

Один запрос может содержать несколько заголовков. Они решают различные задачи и бывают разных типов.

Заголовки запроса (Request Headers). Отправляются клиентом и предоставляют определенную информацию.

  • Host — указывает адрес ресурса: домен или IP.
  • Accept — сообщает, какие типы медиаконтента могут быть обработаны на стороне клиента.
  • User-Agent — предоставляет информацию о клиенте: например, сведения о браузере и его версии, а также об операционной системе. 
  • Authorization — используется при передачи учетных данных для аутентификации.
  • Cookie — передает данные о куках, сохраненных клиентом. Содержит пары формата куки — значения, которые используются как идентификатор, а также для других целей. Например, для сбора предпочтений и отслеживания сессий.

Заголовки ответа (Response Headers). Отправляются сервером в ответ на запрос.

  • Content-Type — указывает тип содержимого, передаваемого сервером (например, text/html, application/json).
  • Set-Cookie — устанавливает cookie.

Общие заголовки (General Headers). Используются в запросах и ответах.

  • Date — указывает дату и время генерации заголовка.
  • Connection — указывает, как следует обрабатывать соединение.

Заголовки сущности (Entity Headers) — описывают содержимое тела сообщения.

  • Content-Length — указывает размер тела в байтах. 
  • Content-Encoding — указывает кодировку содержимого, например gzip. 
  • Last-Modified — указывает дату и время последнего изменения ресурса.


Коды состояния

Если все предыдущие пункты — это то, что спрятано под капотом запросов, то, например, ошибки HTTP увидят все: и владелец онлайн-проекта, и его пользователи. А вообще, коды состояния информируют о статусе запроса. И ответы сервера бывают пяти категорий:

  • 100—199 — информационные;

  • 200—299 — сообщают об успешной обработке запроса;

  • 300—399 — информируют о перенаправлении;

  • 400—499 — сообщают об ошибках на стороне клиента. 

  • 500—599 — отправляются при сбоях на стороне сервера. 

Самое распространенные ошибки 4XX и 5XX можно исправить самостоятельно. Как это сделать, подробно рассказали здесь. А пока напомним о сервисах, с которыми вы сможете обеспечить высокую доступность и производительность вашим онлайн-проектам.

Хостинг с технической поддержкой 24/7. Виртуальный хостинг, облако или выделенный сервер — где бы вы ни разместили онлайн-проект, наши специалисты помогут разобраться с техническим вопросом, даже если вы оставите заявку ночью, в выходные или праздники. 

Администрирование серверов. Сэкономьте на самостоятельном обслуживании IT-инфраструктуры. Закажите услугу администрирования, и наши специалисты обеспечат вашим серверам круглосуточный мониторинг и диагностику ошибок, что позволит заранее предотвращать сбои в работе онлайн-проекта. А еще вы получите 250 Гб дискового пространства для резервных копий, которое всегда можно расширить. 

Объектное хранилище S3. Храните медиаконтент проекта и другие неструктурированные данные в гибком и экономичном облачном сервисе. А для работы с чувствительной информацией используйте аттестованное S3-хранилище. Подробнее о сценариях использования S3 рассказали здесь




Поделиться:
Подпишитесь на email-рассылку!

Будьте в курсе новостей. Отправляем полезные письма каждый месяц.

Пожалуйста, введите адрес электронной почты
Пожалуйста, подтвердите согласие с условиями обработки персональных данных.
article mailing picture
Вы подписались на нашу рассылку!

Скоро вы получите новое письмо.

article mailing picture
Подождите, пожалуйста.
Идет формирование файла