Протокол HTTP

Протокол HTTP (Hypertext Transfer Protocol) – это протокол Прикладного уровня, доставляющий информацию между различными гипермедийными системами. Под понятием гипермедийной системы понимается компьютерное представление системы данных, элементы которой представляются в различных форматах (гипертекст, графические изображения, видеоизображения, звук и т.д.) и обеспечивается автоматическая поддержка смысловых связей между представлениями элементов.

Протокол HTTP применяется в Internet с 1990 года. В настоящее время широкое распространение имеет версия HTTP 1.0, описанная в документе RFC 1945. Разработана новая версия HTTP 1.1 (документ RFC 2616), но пока она находится в стадии предложенного стандарта.

По умолчанию HTTP использует порт 80 и предназначен для построения систем архитектуры клиент-сервер. Запросы клиентов содержат URI (Uniform Resource Identifier) - универсальный идентификатор ресурса, позволяющий определить у сервера затребованный ресурс. URI представляет собой сочетание URL (Uniform Resource Locator) и URN (Uniform Resource Name). URL – унифицированный адресатор ресурсов: предназначен для указания места нахождения ресурса в сети. URN – унифицированное имя ресурса: идентифицирует ресурс, по указанному месту его нахождения (подразумевается, что по данному адресу может быть представлено несколько различных ресурсов).


HTTP (англ. HyperText Transfer Protocol — «протокол передачи гипертекста») — протокол прикладного уровня передачи данных (изначально — в виде гипертекстовых документов).

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

HTTP в настоящее время повсеместно используется во Всемирной паутине для получения информации с веб-сайтов.

Достоинства HTTP:

• Простота

• Расширяемость

• Распространённость

Недостатки HTTP:

• Большой размер сообщений

• Отсутствие «навигации»

• Нет поддержки распределённости

Всё программное обеспечение для работы с протоколом HTTP разделяется на три больших категории:

· Серверы как основные поставщики услуг хранения и обработки информации (обработка запросов).

· Клиенты — конечные потребители услуг сервера (отправка запроса).

· Прокси для выполнения транспортных служб.

Каждое HTTP-сообщение состоит из трёх частей, которые передаются в указанном порядке:

1. Стартовая строка (англ. Starting line) — определяет тип сообщения;

2. Заголовки (англ. Headers) — характеризуют тело сообщения, параметры передачи и прочие сведения;

3. Тело сообщения (англ. Message Body) — непосредственно данные сообщения. Обязательно должно отделяться от заголовков пустой строкой.

Заголовки и тело сообщения могут отсутствовать, но стартовая строка является обязательным элементом, так как указывает на тип запроса/ответа. Исключением является версия 0.9 протокола, у которой сообщение запроса содержит только стартовую строку, а сообщения ответа только тело сообщения.

Стартовые строки различаются для запроса и ответа. Строка запроса выглядит так:

- GET URI — для версии протокола 0.9.

- Метод URI HTTP/Версия — для остальных версий.

Здесь:

· Метод (англ. Method) — название запроса, одно слово заглавными буквами. В версии HTTP 0.9 использовался только метод GET, список запросов для версии 1.1 представлен ниже.

· URI определяет путь к запрашиваемому документу.

· Версия (англ. Version) — пара разделённых точкой арабских цифр. Например: 1.0.

Для запроса страницы, клиент должен передать строку:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: