Статьи: Протокол HTTP

Статья для информационного ресурса

    HTTP - HyperText Transfer Protocol, а именно протокол отправки гипертекста, то есть документа, содержащего ссылки. Спецификация OSI относит HTTP к протоколам прикладного уровня.
    Передача данных имеет клиент-серверную структуру. Краткая последовательность действий:
    1. Формирование запроса клиентским приложением, например, браузером.
    2. Отправка запроса на нужный сервер.
    3. Программное обеспечение (ПО) сервера обрабатывает информацию.
    4. Формирование ответа и передача клиенту.
    5. Отправка других запросов приложением клиента.
    6. Аналогичная обработка информации.
    Задача HTTP – обмен данными между пользователем (посредством веб-браузера или другого приложения) и сервером. Возможно использование этого протокола в качестве «транспорта», передающего информацию для иных протоколов прикладного уровня, например, SOAP, XML-RPC.
    Отправка запросов
    Для отправки и создания запросов часто используется браузер, но возможно применение и других приложений. Последовательность действий со стороны браузера:
    1. Пользователь вводит в стартовую строку нужный адрес сайта, а браузер использует для подключения к серверу этого сайта специальные утилиты, например, telnet или nc.
    2. Браузер создает http-запрос. Добавляет обязательный заголовок Host, служащий для получения сервером адреса, с которого осуществляется запрос и, соответственно, отправки ответа.
    3. При создании запроса учитывается версия протокола. Она указывается в виде чисел, разделенных точкой. Последний вариант HTTP 1.1.
    В процессе добавляется знак «/», указывающий путь к ресурсу. Пример запроса: echo -en "GET / HTTP/1.1\r\nHost: yandex.ru\r\n\r\n" | ncat yandex.ru 80.

    Получение ответа

    При получении ответа создается стартовая строка, включающая в себя протокол, его версию, код состояния и пояснение: HTTP/1.1 200 OK.
    Код пояснения — три цифры, обозначающие результат обработки запроса. Например, если сервер предоставил информацию по указанному запросу, присутствует число 200, если веб-адреса не существует — 404, когда у клиента нет возможности получения доступа к нужному сайту — 403. Протокол HTTP 1.1 определяет 40 разных кодов и допускает расширение списка.
    Пояснение к коду состояния представлено в виде текста, что позволяет человеку легко понимать ответ. После него следуют заголовки в датой и временем получения ответа, информацией о сервере и др. Через 2 пробела от последней строки находится тело ответа.
    Все эти действия проводит браузер, а варианты запросов и ответов различны и обозначаются соответствующими символами в зависимости от ситуации.
    Протокол HTTP не используется шифрование данных для безопасности. Дополнительное расширение HTTPS обеспечивает данные от перехвата и атак вида man-in-the-middle.

    Комментарии: 0

    Пока нет комментариев, ваш комментарий будет первым!

    Возьмусь за фриланс