Протокол HTTP. HTTP (HyperText Transfer Protocol, протокол передачи гипертекста) – это протокол прикладного уровня

HTTP (HyperText Transfer Protocol, протокол передачи гипертекста) – это протокол прикладного уровня, разработанный для обмена гипертекстовой информацией в Internet.HTTP предоставляет набор методов для указания способа передачи запроса серверу.

HTTP используется для коммуникаций между различными пользовательскими программами и программами-шлюзами, предоставляющими доступ к существующим Internet-протоколам, таким как SMTP (протокол электронной почты), NNTP (протокол передачи новостей), FTP (протокол передачи файлов), Gopher и WAIS. HTTP разработан для того, чтобы позволять таким шлюзам через промежуточные программы-серверы (proxy) передавать данные без потерь.

Всякая связь между клиентом и сервером осуществляется посредством сообще­ний. HTTP различает только два вида сообщений — сообщения-запросы и сооб­щения-ответы. Как показано на рис. 11.5, а, сообщения-запросы состоят из трех частей. Строка запроса (request line) имеет стандартный вид и определяет опера­цию, которую клиент хочет выполнить на сервере, а также ссылку на документ, связанный с запросом. Отдельное поле требуется для указания версии HTTP, ко­торую использует клиент. В качестве операций(методов) могут быть указаны GET, POST, HEAD, PUT, DELETE и другие. В качестве ссылки чаще всего используется URL-адрес ресурса.

Ответное сообщение начинается строкой состояния (status line), содержащей номер версии и код состояния из трех цифр, как показано на рис. 11.5, б. Код кратко поясняется текстовой фразой, которая также является частью строки со­стояния. Так, например, код состояния 200 указывает на то, что запрос был обра­ботан и имеет ассоциированную с ним фразу «ОК». Вот другие часто используе­мые коды:

400 (Bad Request)

403 (Forbidden)

404 (Not Found)

Сообщения с запросами или ответами могут содержать дополнительные за­головки. Так, например, если клиент отправляет запрос на операцию post с до­кументом, предназначенным только для чтения, сервер отвечает сообщением с кодом состояния 405 (Method Not Allowed) и заголовком сообщения Allow, опре­деляющим допустимые операции (например, head и get). Другой пример: клиент может поинтересоваться, не изменялся ли документ с определенного момента вре­мени Т. В этом случае клиент отправляет запрос get, дополненный заголовком сообщения If-Modified-Sincе с определенным значением Т.

Методы

Любой запрос клиента к серверу должен начинаться с указания метода. Метод сообщает о цели запроса клиента. Протокол HTTP поддерживает достаточно много методов, но в основном используются только три: POST, GET и HEAD. Метод GET позволяет получить любые данные, идентифицированные с помощью URI в запросе ресурса. Если URI указывает на программу, то возвращается результат работы программы, а не ее текст. Дополнительная информация, необходимая для обработки запроса, встраивается в сам запрос (в строку статуса). При использовании метода GET в поле тела ресурса возвращается собственно затребованная информация.

 

Метод HEAD используют для получения информации о ресурсе.

Метод POST разработан для передачи на сервер такой информации, как новостные и почтовые сообщения, данные для добавления в базу данных, т.е. для передачи информации большого объема и достаточно важной. В отличие от методов GET и HEAD, в POST передается тело ресурса, которое и является информацией, получаемой из полей форм или других источников ввода.








Дата добавления: 2015-08-26; просмотров: 1145;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.