Что такое HTTP
HTTP - это протокол передачи данных в интернете. Работает по алгоритму обработки запроса в ответ на который передает гипертекстовые документы и позволяет открывать пользователю страницы сайтов на своем браузере. Выполняет роли переводчика, связного и отправителя информации.
Для работы HTTP нужны 2 стороны:
потребитель ─ пользователь, который ищет информацию в сети и посылает определенный запрос;
поставщик ─ сервер, который ожидает запрос, обрабатывает его и посылает сообщение с ответом.
Пользователь запускает процесс работы протокола. Сам по себе HTTP не может инициировать соединение и работает только в ответ на получаемые запросы.
Где используется HTTP
HTTP обеспечивает обмен данными между браузером пользователя и веб-сервером. Используется повсеместно в интернете для получения информации с сайтов.
А также находит применение в качестве транспорта для других протоколов прикладного уровня, таких как SOAP, XML-RPC, WebDAV, которые создают взаимодействие сети и пользователя. Например, обеспечивают обработку запросов к базам данных, доступ к файлам, пересылку электронной почты.
Как работает HTTP?
HTTP работает как взаимодействие между пользователем и сервером, построенное на сообщениях запросов и ответов. Каждое сообщение состоит из трех частей: стартовая строка, заголовок, тело. Стартовая строка запроса является обязательной и выглядит так:
METHOD URI HTTP/VERSION,
где METHOD — это как раз метод HTTP-запроса, URI — идентификатор ресурса, VERSION — версия протокола.
В заголовках передается различная служебная информация: кодировка сообщения, название и версия браузера, адрес, с которого пришел пользователь.
Тело сообщения — это и есть передаваемые данные. В ответе передаваемыми данными чаще всего является html-страница, которую запросил браузер. В запросе в теле сообщения передается содержимое файлов, загружаемых на сервер либо тело сообщения отсутствует.