Sobes.tech
Junior

От какви компоненти се състои HTTP заявката?

sobes.tech AI

Отговор от AI

HTTP заявката се състои от следните компоненти:

  1. Начална линия (Request Line): Определя типа на заявката и ресурса. Състои се от:

    • HTTP метод (HTTP Method): Действието, което трябва да бъде изпълнено върху ресурса (например, GET, POST, PUT, DELETE).
    • Път към ресурса (Path): URL адресът на заявения ресурс на сървъра.
    • Версия на HTTP (HTTP Version): Версията на протокола HTTP, използвана за заявката (например, HTTP/1.1, HTTP/2.0).
    // Пример за начална линия
    GET /index.html HTTP/1.1
    
  2. Заглавки на заявката (Request Headers): Предоставят допълнителна информация за клиента, заявката или ресурса. Параметрите на заглавките са представени във формат "Име: Стойност". Основни заглавки:

    • Host: Домейн името на сървъра.
    • User-Agent: Информация за клиента (браузър, ОС).
    • Accept: Типове носители, които клиентът е готов да приеме.
    • Content-Type: Тип на носителя на съдържанието на тялото на заявката (за PUT, POST).
    • Content-Length: Дължината на тялото на заявката в байтове.
    • Authorization: Данни за удостоверяване.
    // Примери за заглавки на заявката
    Host: www.primer.com
    User-Agent: Mozilla/5.0
    Accept: text/html
    
  3. Празен ред (Empty Line): Разделя заглавките на заявката от тялото на заявката. Той е задължителен, дори ако тялото липсва.

  4. Тяло на заявката (Request Body): Съдържа данните, изпратени към сървъра, например данни от форма, JSON за POST/PUT заявки. Не присъства във всички методи (например, липсва при GET).

    // Пример за тяло на заявката (за POST/PUT)
    {
      "name": "John Doe",
      "age": 30
    }
    

Схематично структурата на HTTP заявката може да бъде представена така:

Компонент Описание Задължително
Начална линия Метод, път към ресурса, версия на HTTP Винаги
Заглавки на заявката Допълнителна информация за заявката/клиента Опционално
Празен ред Разделител Винаги
Тяло на заявката Данни, изпратени към сървъра Опционално