Программное обеспечение компьютерных сетей и информационных систем. Баканов В.М. - 90 стр.

UptoLike

Составители: 

- 90 -
Метод GET применяется относительно редко (длина строки
QUERY_STRING ограничена), метод POST более предпочтителен.
Вне зависимости от примененного метода передачи данных (GET или
POST) результат своей работы программа CGI должна направлять в стан-
дартный поток вывода stdout (при этом WWW-сервер гарантирует возврат
данных броузеру локального компьютера). Ниже приведен пример динами-
ческой генерации CGI-программой документа HTML и направления его
на
stdout
. . .
printf("Content-type: text/html\n\n"); //упрощенный пролог HTML
printf("<!DOCTYPE HTML PUBLIC \""-//W3C//DTD HTML 3.2//EN\"">");
printf("<HTML><HEAD>
<TITLE>My first dinamic HTML-page</TITLE>
</HEAD><BODY>");
printf("<H1>Результаты обработки данных формы:</H1>");
. . .
. . .
printf("</BODY></HTML>");
После получения возвращаемых HTML-данных они интерпретируются
броузером. При нежелании генерировать сложный HTML-код подобным
(весьма кропотливым) образом можно применить метод создания шаблона
HTML-файла с последующей программной его модификацией и записью в
stdout.
При использовании CGI-программ через (другие) переменные среды (а
их несколько десятков) передается большое количество очень важной ин-
формации,
которая может существенно помочь программисту.
Заметим, что с помощью CGI-программ легко реализуются, например,
счетчики числа посещений страниц; в качестве языка программирования
CGI-программ часто используют интерпретатор языка Perl (Practical Extrac-
tion and Report Language, иногда в шутку Pathologically Eclectic Rubbish
Lister, см. InterNet-адреса www.perl.com, www.cpan.org,
orwant.www.media.mit.edu/the_perl_journal, www.tpj.com) [20], хотя мо-
жет быть применен практически любой язык программирования (особенно
удобен C/C++). Например, в работе
[16] приведены исходные тексты CGI-
приложений на языке Java, в [20] - на языке Perl; на WEB-сайте автора дан-
ной работы pilger.mgapi.edu реализована простая гостевая книга с примене-
нием Perl.
Недостатком приложений CGI является то, что для обработки каждого
запроса WWW-сервером он запускает новое CGI-приложение (новый про-
цесс), а т.к. современные сервера одновременно могут обрабатывать много
запросов
, ресурсы машины-сервера (например, объем оперативной памяти)
быстро истощаются (не говоря уже о снижении производительности серве-
                                    - 90 -


    Метод GET применяется относительно редко          (длина строки
QUERY_STRING ограничена), метод POST более предпочтителен.
    Вне зависимости от примененного метода передачи данных (GET или
POST) результат своей работы программа CGI должна направлять в стан-
дартный поток вывода stdout (при этом WWW-сервер гарантирует возврат
данных броузеру локального компьютера). Ниже приведен пример динами-
ческой генерации CGI-программой документа HTML и направления его на
stdout

...
printf("Content-type: text/html\n\n"); //упрощенный пролог HTML
printf("");
printf("
My first dinamic HTML-page
");
printf("

Результаты обработки данных формы:

"); ... ... printf(""); После получения возвращаемых HTML-данных они интерпретируются броузером. При нежелании генерировать сложный HTML-код подобным (весьма кропотливым) образом можно применить метод создания шаблона HTML-файла с последующей программной его модификацией и записью в stdout. При использовании CGI-программ через (другие) переменные среды (а их несколько десятков) передается большое количество очень важной ин- формации, которая может существенно помочь программисту. Заметим, что с помощью CGI-программ легко реализуются, например, счетчики числа посещений страниц; в качестве языка программирования CGI-программ часто используют интерпретатор языка Perl (Practical Extrac- tion and Report Language, иногда в шутку Pathologically Eclectic Rubbish Lister, см. InterNet-адреса www.perl.com, www.cpan.org, orwant.www.media.mit.edu/the_perl_journal, www.tpj.com) [20], хотя мо- жет быть применен практически любой язык программирования (особенно удобен C/C++). Например, в работе [16] приведены исходные тексты CGI- приложений на языке Java, в [20] - на языке Perl; на WEB-сайте автора дан- ной работы pilger.mgapi.edu реализована простая гостевая книга с примене- нием Perl. Недостатком приложений CGI является то, что для обработки каждого запроса WWW-сервером он запускает новое CGI-приложение (новый про- цесс), а т.к. современные сервера одновременно могут обрабатывать много запросов, ресурсы машины-сервера (например, объем оперативной памяти) быстро истощаются (не говоря уже о снижении производительности серве-