Творим интернет с Техническим экспертом

HTTP заголовки

Учиться, учиться и учиться. Ленин В.И.

Каждая кухарка должна научиться управлять государством
© В.И. Ленин

Столкнулся Техэксперт однажды с проблемой. Цитата Ильича не зря приведена — очень похоже стоит задача: объяснить человеку не владеющему специальными знаниями что такое HTTP заголовки. Да объяснить требуется так, чтобы не получилось как в 17-м он понял «как управлять государством» с первого раза.

Напрашивается желание рассказать про HTTP в целом, провести экскурс в историю WEB. Коснуться также того где ещё используется HTTP — SOAP, XML-RPC, WebDAV… Но, боюсь, таким образом, человека, не отягощеного знаниями в ИТ можно лишь окончательно заморочить и отбить навсегда желание осваивать веб. Так задачу можно решать на школьном уроке информатики, ну или в ВУЗе. Когда ты студент или еще школьник, и впереди целая жизнь, можно особо никуда не спешить и познавать суть вещей поэтапно — от простого к сложному. Это правильный, но долгий путь.

Возвращаясть к нашим баранам нашей задаче — всё же, как взрослому человеку не имеющему ИТ образования и не собирающемуся становиться разработчиком объяснить что же такое HTTP-заголовки за 5 минут?

1. Что такое HTTP и модель КЛИЕНТ(браузер) — СЕРВЕР. (1 минута)

Как работает HTTP

Как работает HTTP

Задача протокола HTTP (ради которой он был разработан) – прием и передача гипертекстовых документов. Т.е. тех веб-страниц, которые мы просматриваем в браузере. Остального не касаемся.

Протокол HTTP предполагает использование клиент-серверной структуры передачи данных. Клиентское приложение формирует запрос и отправляет его на сервер, после чего серверное программное обеспечение обрабатывает данный запрос, формирует ответ и передаёт его обратно клиенту. После этого клиентское приложение может продолжить отправлять другие запросы, которые будут обработаны аналогичным образом.

2. Структура HTTP-запроса. (2 минуты)

Структура HTTP-запроса

Структура HTTP-запроса

Первая строка HTTP-запроса (линия запроса) и состоит из трёх частей:

«method» указывает, на то какой это запрос. Распространённые методы GET, POST и HEAD.
«path» как правило, является частью URL-адреса, который идёт после host (домена). Например, если запрос «http://texxpert.ru/uchastnik-programmy-kachestva-1s-bitriks/», path будет «/uchastnik-programmy-kachestva-1s-bitriks/».
Часть «protocol» содержит «HTTP» и версию, которая в современных браузерах обычно 1.1.

Остальная часть запроса содержит HTTP headers как пары «Name: Value» в каждой строке. Они содержат различную информацию о HTTP-запросе и вашем браузере. Например, строка «User-Agent» предоставляет информацию о версии браузера и операционной системе, которую вы используете. «Accept-Encoding» сообщает серверу, может ли ваш браузер принимать сжатый output, например gzip.

3. Запускаем Google Chrome, открываем Chrome Developers Tools (Ctrl+Shift+I) — Network (1 минута)

HTTP-заголовки в Chrome Developers Tools

HTTP-заголовки в Chrome Developers Tools

4. Наглядно смотрим формат запроса (Request Headers) формат ответа (Response Headers). И так несколько раз с разными запросами. (1 минута)

Всё. Прошло 5 минут и человек, без знания основ ИТ узнал основу WEB. Таких людей в отрасли большинство, так что если вы нашли в статье что-то для себя и/или о себе, помните — ковчег построил любитель.

 

 

Post a comment