Инструменты пользователя

Инструменты сайта


networks:http-request

Различия

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

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
networks:http-request [2023/09/30 18:20]
werwolf [URL]
networks:http-request [2023/09/30 18:30] (текущий)
werwolf [Утилита cURL]
Строка 16: Строка 16:
   - Сервер обрабатывает запрос и возвращает клиенту ресурс,​ который был запрошен.   - Сервер обрабатывает запрос и возвращает клиенту ресурс,​ который был запрошен.
  
-{{https://​selectel.ru/​blog/​wp-content/​uploads/​2022/​06/​image-1.png?1436x606|коммуникация устройств}}+{{:networks:​fetch.png |}}
  
 Схема коммуникации устройств по HTTP-протоколу. Схема коммуникации устройств по HTTP-протоколу.
Строка 52: Строка 52:
 В примере ниже стартовая строка указывает,​ что в качестве метода используется GET, обращение будет произведено к ресурсу /​index.html,​ по версии протокола HTTP/1.1: В примере ниже стартовая строка указывает,​ что в качестве метода используется GET, обращение будет произведено к ресурсу /​index.html,​ по версии протокола HTTP/1.1:
  
-{{https://​selectel.ru/​blog/​wp-content/​uploads/​2022/​06/​image.png?1464x526|структурные элементы}}Основные структурные элементы URL.+{{:networks:​fetch2.png |}} 
 + 
 +Основные структурные элементы URL.
  
 Разберемся с каждым из названных элементов подробнее. Разберемся с каждым из названных элементов подробнее.
Строка 62: Строка 64:
 Ниже приведены наиболее используемые методы и их описание:​ Ниже приведены наиболее используемые методы и их описание:​
  
-{{https://​selectel.ru/​blog/​wp-content/​uploads/​2022/​06/​image-2.png?1360x538|методы запроса}}Разберемся с каждым из названных элементов подробнее.+{{:networks:​fetch3.png |}} 
 + 
 +Разберемся с каждым из названных элементов подробнее.
  
 |**Метод**|**Описание**| |**Метод**|**Описание**|
Строка 83: Строка 87:
 **Host** указывает местоположение ресурса,​ в нем может быть как доменное имя, так и IP-адрес. **Host** указывает местоположение ресурса,​ в нем может быть как доменное имя, так и IP-адрес.
  
-**Port**, как можно догадаться,​ позволяет указать номер порта, по которому следует обратиться к серверу. Оно начинается с двоеточия (:), за которым следует номер порта. При отсутствии данного элемента номер порта будет выбран по умолчанию в соответствии с указанным значением **Scheme** (например,​ для http:// это будет порт 80).+**Port**, как можно догадаться,​ позволяет указать номер порта, по которому следует обратиться к серверу. Оно начинается с двоеточия (:), за которым следует номер порта. При отсутствии данного элемента номер порта будет выбран по умолчанию в соответствии с указанным значением **Scheme** (например,​ для ​%%http://%% это будет порт 80).
  
 Далее следует поле **Path**. Оно указывает на ресурс,​ к которому производится обращение. Если данное поле не указано,​ то сервер в большинстве случаев вернет указатель по умолчанию (например index.html). Далее следует поле **Path**. Оно указывает на ресурс,​ к которому производится обращение. Если данное поле не указано,​ то сервер в большинстве случаев вернет указатель по умолчанию (например index.html).
Строка 103: Строка 107:
   * Отсутствовала возможность так называемого мультиплексирования — механизма,​ позволяющего объединить несколько соединений в один поток данных. Приходилось открывать несколько соединений на сервере для обработки входящих запросов.   * Отсутствовала возможность так называемого мультиплексирования — механизма,​ позволяющего объединить несколько соединений в один поток данных. Приходилось открывать несколько соединений на сервере для обработки входящих запросов.
  
-С выходом HTTP/2 было предложено следующее решение:​ HTTP/​1.X-сообщения разбивались на так называемые фреймы,​ которые встраивались в поток данных.+С выходом ​%%HTTP/2%% было предложено следующее решение: ​%%HTTP/​1.X-сообщения%% разбивались на так называемые фреймы,​ которые встраивались в поток данных.
  
 Фреймы данных (тела сообщения) отделялись от фреймов заголовка,​ что позволило применять сжатие. Вместе с появлением потоков появился и ранее описанный механизм мультиплексирования — теперь можно было обойтись одним соединением для нескольких потоков. Фреймы данных (тела сообщения) отделялись от фреймов заголовка,​ что позволило применять сжатие. Вместе с появлением потоков появился и ранее описанный механизм мультиплексирования — теперь можно было обойтись одним соединением для нескольких потоков.
Строка 147: Строка 151:
   - Пояснение — короткое текстовое описание к коду состояния. Используется исключительно для того, чтобы упростить понимание и восприятие человека при просмотре ответа.   - Пояснение — короткое текстовое описание к коду состояния. Используется исключительно для того, чтобы упростить понимание и восприятие человека при просмотре ответа.
  
-{{https://​selectel.ru/​blog/​wp-content/​uploads/​2022/​06/​image2-1-1525x1079.png?1525x1079|строка состояния ответа}}\\ Так выглядит строка состояния ответа.+{{:networks:​fetch4.png?700x500 ​|}} 
 + 
 +Так выглядит строка состояния ответа.
  
 ==== Коды состояния и текст статуса ==== ==== Коды состояния и текст статуса ====
Строка 191: Строка 197:
 HTTP является расширяемым протоколом,​ который предоставляет огромное количество возможностей,​ а также поддерживает передачу всевозможных типов файлов. Однако,​ вне зависимости от версии,​ у него есть один существенный недостаток,​ который можно заметить если перехватить отправленный HTTP-запрос:​ HTTP является расширяемым протоколом,​ который предоставляет огромное количество возможностей,​ а также поддерживает передачу всевозможных типов файлов. Однако,​ вне зависимости от версии,​ у него есть один существенный недостаток,​ который можно заметить если перехватить отправленный HTTP-запрос:​
  
-{{https://​selectel.ru/​blog/​wp-content/​uploads/​2022/​06/​image8-1525x405.png?1525x405|данные http-запроса передаются в открытом виде}}Да, все верно: данные передаются в открытом виде. HTTP сам по себе не предоставляет никаких средств шифрования.+{{:networks:​fetch5.png |}} 
 + 
 +Да, все верно: данные передаются в открытом виде. HTTP сам по себе не предоставляет никаких средств шифрования.
  
 Но как же тогда работают различные банковские приложения,​ интернет-магазины,​ сервисы оплаты услуг и прочие приложения,​ в которых циркулирует чувствительная информация пользователей?​ Но как же тогда работают различные банковские приложения,​ интернет-магазины,​ сервисы оплаты услуг и прочие приложения,​ в которых циркулирует чувствительная информация пользователей?​
Строка 201: Строка 209:
 Теперь если мы перехватим не HTTP , а HTTP**s**-запрос,​ то не увидим здесь ничего интересного:​ Теперь если мы перехватим не HTTP , а HTTP**s**-запрос,​ то не увидим здесь ничего интересного:​
  
-{{https://​selectel.ru/​blog/​wp-content/​uploads/​2022/​06/​image10-1-1525x419.png?1525x419|шифрование данных в https}}Данные передаются в едином зашифрованном потоке,​ что делает невозможным получение учетных данных пользователей и прочей критической информации средствами обычного перехвата.+{{:networks:​fetch6.png |}} 
 + 
 +Данные передаются в едином зашифрованном потоке,​ что делает невозможным получение учетных данных пользователей и прочей критической информации средствами обычного перехвата.
  
  ​[[https://​selectel.ru/​services/​additional/​firewall/​|Повысьте безопасность на сетевых портах с Selectel]] [[https://​selectel.ru/​services/​additional/​firewall/​|Три межсетевых экрана для любых потребностей бизнеса.]]  ​[[https://​selectel.ru/​services/​additional/​firewall/​|Повысьте безопасность на сетевых портах с Selectel]] [[https://​selectel.ru/​services/​additional/​firewall/​|Три межсетевых экрана для любых потребностей бизнеса.]]
Строка 224: Строка 234:
 После нажатия Enter сайт начнет загружаться,​ а открытая вкладка Network — заполняться различными элементами,​ начиная все больше напоминать приборную панель самолета. После нажатия Enter сайт начнет загружаться,​ а открытая вкладка Network — заполняться различными элементами,​ начиная все больше напоминать приборную панель самолета.
  
-{{https://​selectel.ru/​blog/​wp-content/​uploads/​2022/​06/​image4-1-1525x739.png?1525x739|вкладка network}}Не спешите пугаться. Это всего лишь список ресурсов,​ которые нужны для правильного отображения и работы сайта.+{{ :networks:​fetch7.png?700x400 ​|}} 
 +Не спешите пугаться. Это всего лишь список ресурсов,​ которые нужны для правильного отображения и работы сайта.
  
 Нажав на любой из них, мы можем увидеть детали обработки отправленного запроса:​ Нажав на любой из них, мы можем увидеть детали обработки отправленного запроса:​
  
-{{https://​selectel.ru/​blog/​wp-content/​uploads/​2022/​06/​image3-2-1525x876.png?1525x876|детали обработки запроса}}В данном запросе,​ например:​+{{ :networks:​fetch8.png?700x400 ​|}} 
 + 
 +В данном запросе,​ например:​
  
   * URL, к которому было совершено обращение — https://​selectel.ru/​blog,​   * URL, к которому было совершено обращение — https://​selectel.ru/​blog,​
Строка 242: Строка 255:
 Для отправки запроса и получения ответа мы можем воспользоваться флагом -v и указанием URL того ресурса,​ который мы хотим получить. «Схему» HTTP-запроса можно увидеть на скрине ниже: Для отправки запроса и получения ответа мы можем воспользоваться флагом -v и указанием URL того ресурса,​ который мы хотим получить. «Схему» HTTP-запроса можно увидеть на скрине ниже:
  
-{{https://​selectel.ru/​blog/​wp-content/​uploads/​2022/​06/​image1-1.jpg?1413x894|схема запроса}}После запуска утилита выполняет:​ +{{ :networks:​fetch9.jpg?700x400 ​|}} 
 + 
 +После запуска утилита выполняет:​ 
  
   * подключение к серверу,​    * подключение к серверу,​ 
networks/http-request.1696087219.txt.gz · Последние изменения: 2023/09/30 18:20 — werwolf