Главная Статьи Протокол HTTP

Протокол HTTP

21.07.2017

Протокол HTTP или HyperText Transfer Protocol - это главный прокол сервиса Интернет WWW (всемирной паутины). Основная задача протокола обеспечить передачу гипертекста в сети. В протоколе точно описывается формат сообщений, для обмена клиентов и серверов.

Описан протокол HTTP в RFC 2616(HTTP1.1).

Основа протокола - обеспечить взаимодействие клиента и сервера по средством одного ASCII-запроса, и следующего на него ответа в стандарте RFC 822 MIME.

На практике протокол HTTP работает на основе TCP/IP порт 80, но можно настроить и по-другому. И хоть TCP/IP не является обязательным, он остается предпочтительным, так как берет на себя разбиение и сборку сообщений на себя и не «напрягает» ни браузер, ни сервер.

Следует отметить, что протокол HTTP может использоваться не только в веб-технологиях, но и других ООП приложениях (объектно-ориентированных).

URL

Основой веб-общения клиент-сервер является запрос. Запрос отправляется при помощи URL– единого указателя ресурсов Интернет. Напомню, что такое URL адрес.

Понятная и простая структура URL состоит из следующих элементов:

  • Протокол
  • Хост
  • Порт
  • Каталог ресурса
  • Метки (Запрос)

Примечание: Протокол http это протокол для простых, не защищенных соединений. Защищенные соединения работают по протоколу https. Он более безопасен для обмена данными.

МЕТОДЫ HTTP-ЗАПРОСОВ

Один из параметров URL, определяет название хоста, с которым мы хотим общаться. Но этого мало. Нужно определить действие, которое нужно совершить. Сделать это можно при помощи метода определенного протоколом HTTP.

  • HEAD - Прочитать заголовок веб-страницы
  • GET - Прочитать веб-страницу
  • POST - Добавить к веб-странице
  • PUT - Сохранить веб-страницу
  • TRACE - Отослать назад запрос
  • DELETE - Удалить веб-страницу
  • OPTIONS - Отобразить параметры
  • CONNECT - Зарезервировано для будущего использования

Метод GET запрашивает страницу (файл, объект), закодированную по стандарту MIME. Это самый употребляемый метод. Структура метода: GET имя_файла HTTP/1.1

Метод HEAD. Этот метод запрашивает заголовок сообщения. При этом страница не загружается. Этот метод позволяет узнать время последнего обновления страницы, что нужно для управления КЭШем страниц. Этот метод позволяет проверить работоспособность запрашиваемого URL.

Метод PUT. Этот метод может поместить страницу на сервер. Тело запроса PUT включает размещаемую страницу, которая закодирована по MIME. Это метод требует идентификации клиента.

Метод POST. Этот метод добавляет содержимое к уже имеющейся странице. Используется, как пример, для добавления записи на форум.

Метод DELETE. Этот метод уничтожает страницу. Метод удаления требует подтверждения прав пользователя на удаление.

Метод TRACE. Этот метод отладки. Он указывает серверу отослать запрос назад и позволяет узнать, искажается или нет, запрос клиента, вернувшись от сервера.

Метод CONNECT – метод резерва, не используется.

Метод OPTIONS позволяет запросить свойства сервера и свойства любого файла.

В общении клиента и сервера «запрос-ответ», сервер обязательно генерирует ответ. Это может быть веб-страница или строку состояния с кодом состояния. Код состояния вам хорошо известен. Один из кодов известный код 404 –Страница не найдена.

Некоторые коды состояния

1хх: Готовность сервера, Код 100 – сервер готов обрабатывать запросы клиента.

2хх: Успех.

  • Код 200 – запрос обработан успешно
  • Код 204 – Содержимого нет

3хх: Перенаправление.

  • Код 301 – Запрашиваемая страница перенесена
  • Код 304 – Страница в КЭШе еще актуальна

4хх: Ошибка клиента.

  • Код 403 – Ошибка доступа
  • Код 404 – Страница не найдена

5хх: Ошибки сервера

  • Код 500 – Ошибка сервера внутренняя
  • Код 503 – Предпринять попытку запроса позже
Наверх