рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Основы HTTP.

Основы HTTP. - Лабораторная Работа, раздел Образование, Тема: Взаимодействие процессов через механизм гнезд Http – Протокол Более Высокого Уровня, Он Является Протоколом Для Www И Относ...

HTTP – протокол более высокого уровня, он является протоколом для WWW и относительно прост.

HTTP построен на основе ТСР. Он работает следующим образом: сервер ожидает (listens) запросы на порт 80; клиент (обычно браузер) соединяется (connects) с сервером, узнав его IP-адрес у сервера имен. Используя собственный номер порта, клиент устанавливает с сервером двустороннее TCP-соединение, после чего посылает ему запрос (request). Например:

 

GET/customers/newproducts.html HTTP/1.0

 

Сервер определяет, что запрос отностится к самому популярному типу GET, и решает, что клиенту нужен файл newproducts.html, находящийся в северном каталоге /customers, который может совпадать или не совпадать с каталогом /customers на жестком диске сервера. Вот заголовки запросов (request headers), которые в основном описывают возможности клиента:

Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/x-jg, */*

Accept-Language: en

UA-pixels: 1024x768

UA-color: color8

UA-OS: Windows NT

UA-CPU: x86

User-Agent: Mozilla/2.0 (compatible; MSIE 3.0; AK; Windows NT)

Host: www.slowsoft.com

Connection: Keep-Alive

If-Modified-Since: Wed, 26 Mar 2003 20:23:04 GMT

(пустая строка)

 

Заголовок If-Modified-Since сообщает серверу, что тот должен передать файл newproducts.html, если он был изменен после 26 марта 2003 года. Это подразумевает, что у браузера в кэше есть копия этого файла, датированная этим числом. Пустая строка в конце запроса критически важна – это единственный способ указать серверу, что надо закончить прием и начать передачу, поскольку ТСР-соединение остается открытым.

Теперь сервер начинает действовать. Он посылает newproducts.html, но сначала передает ОК-ответ:

 

HTTP/1.0 200 OK

 

За которым сразу следуют строки заголовка ответа (response header):

Server: Microsoft-IIS/2.0

Date: Thu, 03 Mar 2003 17:33:12 GMT

Content-Type: text/html

Accept-Ranges: bytes

Last-Modified: Wed, Mar 26 2003 20:23:04 GMT

Content-Length: 407

(пустая строка)

Содержимое newproducts.html следует сразу за пустой строкой:

<html>

<head><title>SlowSoft’s New Products</title></head>

<body><body background=”/images/clouds.jpg”>

<h1>< center >Welcome to SlowSoft’s New Products List

</center></h1><p>

Unfortunately, budget constraints have prevented SlowSoft from introducing any new products this year. We suggest you keep enjoying the old products.<p>

<a href=”default.htm”> SlowSoft’s Home Page</a><p>

</body>

<html>

Вы видите здесь элементарный код языка разметки гипертекста (HyperText Markup Language, HTML); тэги (tags) HTML содержатся в угловых скобках и часто для каждого начального тэга есть конечный (с символом '/').

Для сервера клиенты – это просто ІР-адреса и номера портов. Для разных запросов от клиента номер порта может отличаться.

 

Многим функциямWinsock в качестве параметра нужен адрес сокета. Адрес сокета состоит из 32-разрядного IP-адреса и 16-разрядного номера порта. В Winsock для задания адреса используется 16-байтовая структура sockaddr_in:

struct sockaddr_in {

short sin_family;

u_short sin_port;

struct in_addr sin_addr;

char sin_zero[8];

}; // Struct sockaddr_in

 

IP-адрес хранится как значение типа in_addr, определенное следующим образом:

struct in_addr {

union { u_char s_b1, s_b2, s_b3, s_b4;

struct {u_short s_w1, s_w2;} S_un_w;

u_long S_addr;

} S_un;

}; // struct in_addr

– Конец работы –

Эта тема принадлежит разделу:

Тема: Взаимодействие процессов через механизм гнезд

Лабораторная работа... Тема Взаимодействие процессов через механизм гнезд... Цель Научиться передавать данные и сообщения между процессами компьютеров глобальной сети...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Основы HTTP.

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Протокол IP.
IP определяет пакеты, называемые датаграммы (datagrams), являющиеся базовыми единицами интернет-взаимодействия. Эти пакеты, обычно длинной менее 1000 байт, передаются по всему миру при открытии Web

Протокол UDP.
UDP – это всего лишь небольшая надстройка над IP, поскольку прложения никогда не используют IP напрямую. Подобно IP, UDP не сообщаетотправителю о доставке датаграммы. UDP хорош для простых однократ

Протокол ТСР.
ТСР выполняет безошибочную передачу больших блоков донных, являющийся главным протоколом интернета. На рис.4 показан формат сегмента ТСР (он не называется датаграмма). ТСР располагается внутри IP-д

Запуск сервера
Сервер запускается в ответ на некоторое действие пользователя, например, выбор из меню. Вот обработчик команды:   CBlockingSocket g_sListen; // один глоб

Серверный поток
Теперь взглянем на функцию ServerThreadProc:   UINT ServerThreadProc(LPVOID pParam) {CSockAddr saClient; CHttpBlockingSocket sConnect;

Очистка
Чтобы избежать при завершении «утечек» памяти, программа должна убедиться, что завершены все рабочие потоки. Простейший способ выполнить это – закрыть ожидающий сокет. Это приведет к тому, что все

Упрощенный клиент НТТР
Теперь вариант со стороны клиента – простая программа, которая выполняет слепой (blind) запрос GET. Когда сервер принимает запрос GET с косой чертой, показанный ниже, он возвращает HTML-файл по умо

Blocksock.h
  // needs winsock.h in the precompiled headers typedef const struct sockaddr* LPCSOCKADDR; class CBlockingSocketException : public CException { DE

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги