Реферат: Использование CGI при создании интерактивных интерфейсов

4.1 WWW (World Wide Web) и средства интерактивного взаимодействия

4.2Спецификация CGI
4.2.1Переменные окружения
4.2.2Стандартный вывод
4.2.3Стандартный входной поток
4.2.4Аргументы командной строки

4.3Последовательность действий для обработки входных данных cgi-модуля для разных методов запроса GET и POST
4.3.1Для метода GET
4.3.2Для метода POST

4.4Примеры cgi-модулей

4.1 WWW (World Wide Web) и средства интерактивного взаимодействия

Цель данной главы познакомить пользователя с той частью WWW-технологий которая связана с созданием интерактивных интерфейсов и предполагается что пользователь знаком с основами WWW, HTML и С/С++.

В общем случае, интерактивный интерфейс пользователя представляет собой систему, обеспечивающую взаимодействие пользователя и программы. Для WWW, интерактивный интерфейс можно определить как последовательность HTML-документов, реализующих интерфейс пользователя. Можно также условно классифицировать принципы построения интерфейса по типу формирования HTML-документа:

  • статический
  • динамический

В первом случае источником интерфейса является HTML-документ, созданный в каком-либо текстовом или HTML-ориентированном редакторе. Следовательно, данный документ остается неизменным в течение использования. Во втором случае источником интерфейса является HTML-документ сгенерированный cgi-модулем. Следовательно, появляется некоторая гибкость в видоизменении интерфейса во время использования.

Таким образом, можно ввести понятие интерактивного интерфейса для WWW.

Интерактивный интерфейс для WWW представляет собой последовательность статических или динамически формируемых HTML-документов, реализующих интерфейс пользователя.

Практически любая задача, решающая проблему получения данных от клиента, связана с построением интерфейса. Наиболее интересным является построение интерфейсов к различным базам данных, доступ к SQL-серверу, получение информации от периферийных устройств, создание клиентских рабочих мест. Все это возможно посредством CGI(Common Gateway Interface).

Common Gateway Interface (CGI) является стандартом интерфейса внешней прикладной программы с WWW сервером.

Задача построения вышеназванных интерфейсов делится на две части:

  • Клиентская часть
  • Серверная часть

Рисунок 4-1. Две части интерактивного интерфейса.

Клиентская часть

Для создания клиентской части необходимо создать HTML-документ, в котором реализован интерфейс с пользователем. В языке HTML это возможно посредством форм.

Конструкции языка HTML, используемые при реализации форм, даны в приложении 1 к гл. 4.

Серверная часть

Серверная часть состоит из исполняемого модуля, решающего основные задачи обработки данных поступающих от клиентской части, формирования ответа в формате HTML, и т.д. Такой модуль называется cgi-модулем .

Методы HTTP запроса

Для реализации взаимодействия "клиент-сервер" важно, какой метод HTTP запроса использует клиентская часть при обращении к WWW серверу. В общем случае, запрос - это сообщение, посылаемое клиентом серверу. Первая строка HTTP запроса(см. гл.3) включает в себя метод, который должен быть применен к запрашиваемому ресурсу, идентификатор ресурса(URI-Uniform Resource Identifier), и используемую версию HTTP-протокола. В рассматриваемом нами случае, клиентская часть применяет методы запроса POST и GET. Метод POST используется для запроса серверу, чтобы тот принял информацию, включенную в запрос, как относящуюся к ресурсу, указанному идентификатором ресурса. Метод GET используется для получения любой информации, идентифицированной идентификатором ресурса в HTTP запросе.

Для WWW-сервера стандарта NCSA прикладные программы или CGI-модули, обрабатывающие поток данных от клиента или (и) формирующие обратный поток данных могут быть написаны на таких языках программирования как:

  • C/C++;
  • Любой UNIX shell;
  • Fortran;
  • Perl;
  • Visual Basic;
  • TCL;
  • AppleScript;

4.2 Спецификация CGI

CGI определяет 4 информационных потока.

  1. Переменные окружения
  2. Стандартный входной поток
  3. Стандартный выходной поток
  4. Командная строка

Рисунок 4-2. CGI-интерфейс.

4.2.1 Переменные окружения

Переменные окружения условно делятся на два типа:

  • общие для всех типов запросов (устанавливаются для всех типов)
  • зависящие от метода запроса

К переменным первого типа относятся следующие переменные:

SERVER_SOFTWARE содержит информацию о WWW сервере (название/версия)

SERVER_NAME содержит информацию об имени машины, на которой запущен WWW сервер, символическое имя или IP адрес соответствующие URL.

GATEWAY_INERFACE содержит информацию о версии CGI(CGI/версия)

Следующие переменные являются специфичными для разных типов запросов и значения этим переменным присваиваются перед вызовом cgi-модуля.

CONTENT_LENGTH значение этой переменной соответствует длине стандартного входного потока в символах.

CONTENT_TYPE эта переменная специфицирована для запросов содержащих дополнительную информацию, таких как HTTP POST и PUT, и содержит тип данных этой информации.

SERVER_PROTOCOL эта переменная содержит информацию об имени и версии информационного протокола (протокол/версия).

SERVER_PORT значение переменной содержит номер порта, на который был послан запрос.

REQUEST_METHOD метод запроса, который был использован "POST","GET","HEAD" и т.д.

--> ЧИТАТЬ ПОЛНОСТЬЮ <--

К-во Просмотров: 337
Бесплатно скачать Реферат: Использование CGI при создании интерактивных интерфейсов