Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Извлечение данных




Когда браузер запрашивает страницу у сервера (вообще говоря, посылает HTTP-запрос), он проверяет наличие cookie-файлов, предназначенных для данного документа. В случае если искомая информация присутствует, она извлекается из файла и оправляется вместе с HTTP-запросом серверу. Тот, в свою очередь, полученную информацию опускает в переменную окружения HTTP_COOKIE в виде пар имя_переменной=значение. Доступ 'к переменной окружения может осуществляться посредством стандартной функции GetEnvironmentvariabie, аналогично приведенным выше примерам.

Следует заметить, что нельзя в названиях и значениях сохраняемых переменных использовать некоторые символы, такие как точка с запятой, кавычки и т. д. При необходимости их передачи, они должны быть закодированы в соответствии с правилами кодировки данных форм (они наиболее безопасны с точки зрения возникновения исключительных ситуаций, связанных с некорректным содержимым).

 

Создание CGI-программ с использованием библиотек Delphi

Наверняка, читая предыдущие материалы главы, вы, дорогой читатель, уже обратили снимание, что при решении различных задач серверного программирования часто приходится реализовывать одинаковые функции, такие как декодирование символов, извлечение содержимого переменных окружения, формирование HTTP-заголовка, получение строк запроса по имени поля формы и т. д. Программирование всех этих однотипных задач может занять львиную долю рабочего времени программиста, и для облегчения его участи разработчики Delphi уже реализовали все это, так что все, что осталось научиться сделать — это воспользоваться результатами их работы.

Вообще говоря, объекты, которые заготовили для нас — простых разработчиков, представляют собой мощные инструменты, меняющие методы и разработки серверных программ.

Исходные коды этих библиотек находятся в подкаталоге Source\INTERNET того каталога, куда установлена Delphi. В Delphi версии 3.0 находятся следующие модули: cgiapp.pas, copyprsr.pas, dbweb.pas, httpapp.pas, isapiapp.pas, masks.pas, ntois.pas, scktcomp.pas, syncobjs.pas. Дополнительно к этим файлам, последние версии Delphi содержат новые подключаемые модули, которые описаны в приложении 1.

Многие объекты, описанные в этих библиотеках, представляют собой невизуальные компоненты, которые доступны на вкладке Internet Component Palette. Это позволяет редактировать их свойства, используя Object Inspector в визуальном режиме. Вся следующая глава посвящена работе с невизуальными объектами, и поэтому здесь они описаны не будут. Если вы планируете использовать их, то переходите к изучению очередной главы.

ГЛАВА 10




Поделиться с друзьями:


Дата добавления: 2014-12-29; Просмотров: 383; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.