Advertisement
AlexNovoross87

HTTP BASIC && FIELDS

Dec 27th, 2024 (edited)
17
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.93 KB | None | 0 0
  1. HTTP ЗАПРОС:
  2. 1 2 3
  3. v v v
  4. GET / HTTP/1.1
  5. Host: www.google.com
  6. User-Agent: curl/7.79.1
  7. Accept: */*
  8. *1 HTTP-метод. GET, POST, PUT, DELETE, OPTIONS, HEAD. Метод сообщает серверу операцию, которую хочет выполнить клиент.
  9. *2 Путь к ресурсу на веб-сервере (Request-URI). Он сообщает серверу, какой ресурс запросил клиент. Строка / означает путь к корневому ресурсу. Как правило, это главная страница сайта. Примеры URI-строк: /images/image1.png, /search?q=c++.
  10. *3 Версия протокола. В данном случае HTTP 1.1
  11. -----------------------------------------------------------------------------------------------
  12. В конце строки располагается последовательность символов \r («возврат каретки», “carriage return” или CR) и \n («перевод строки», “line feed” или LF). За ней следуют заголовки запроса — строки вида <НазваниеЗаголовка>: <ЗначениеЗаголовка>. Они заканчиваются последовательностью символов CRLF (CR + LF). Заголовки сообщают серверу дополнительную информацию. Пробелы между двоеточием и значением заголовка игнорируются. Регистр символов в названии заголовка значения не имеет.
  13. Заголовки:
  14. 1. Общие заголовки (General Headers)
  15. Эти заголовки могут использоваться как в запросах, так и в ответах, но не содержат информации о содержимом сообщения. Примеры:
  16. Date: Указывает дату и время отправки сообщения.
  17. Cache-Control: Управляет кэшированием контента.
  18. Connection: Определяет параметры соединения.
  19.  
  20.  
  21. 2. Заголовки запроса (Request Headers)
  22. Эти заголовки используются только в запросах от клиента к серверу. Они содержат информацию о клиенте и запрашиваемом ресурсе.
  23. User-Agent: Информация о клиентском приложении, отправляющем запрос.
  24. Accept: Указывает, какие типы контента клиент может обрабатывать.
  25. Authorization: Передает учетные данные для авторизации на сервере.
  26. 3. Заголовки ответа (Response Headers)
  27. Эти заголовки используются только в ответах от сервера к клиенту. Они содержат информацию о статусе запроса и о самом ответе. Примеры:
  28. Content-Type: Указывает тип содержимого, возвращаемого сервером.
  29. Set-Cookie: Устанавливает куки для клиента.
  30. Location: Указывает новый URL для перенаправления.
  31. 4. Заголовки сущности (Entity Headers)
  32. Эти заголовки содержат информацию о теле ресурса и могут использоваться как в запросах, так и в ответах. Примеры:
  33. Content-Length: Указывает длину тела сообщения.
  34. Content-Encoding: Определяет кодировку содержимого.
  35. Content-Language: Указывает язык содержимого.
  36. Дополнительные группы заголовков
  37. Кроме основных типов, существуют также специфические группы заголовков:
  38. Безопасные заголовки: Например, Content-Security-Policy, Strict-Transport-Security, которые помогают защитить веб-приложения от атак.
  39. Сквозные заголовки (Hop-by-Hop Headers): Эти заголовки должны передаваться конечному получателю сообщения и не должны сохраняться промежуточными прокси-серверами.
  40.  
  41.  
  42. После объявления последнего заголовка последовательность символов CRLF добавляется дважды. Так сервер может узнать, что заголовки закончились и дальше будет передано тело запроса.
  43. Host — единственный обязательный заголовок в GET-запросе HTTP/1.1. Он сообщает серверу информацию об имени хоста, которому адресован запрос.
  44. Заголовок Content-Type не передаётся в запросах без тела, таких как GET и HEAD.
  45. Заголовки Accept и User-Agent — опциональные. Если заголовок Accept не задан, то сервер будет знать, что клиент может принять контент в произвольном формате. Заголовок User-Agent подсказывает серверу, какое клиентское приложение сделало запрос. Сервер может учитывать этот заголовок при обработке запроса, а может полностью его игнорировать.
  46. Заголовок Server — опциональный заголовок ответа, а не запроса.
  47.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement