на начало
На главную страницу
Форум   

Статья :: Архитектура приложения, использующего ATL server


Архитектура приложения, использующего ATL server

Как и динамически подключаемые библиотеки (DLL) традиционных расширений интерфейса прикладного программирования Internet-сервера (ISAPI), динамически подключаемые библиотеки (DLL) расширений интерфейса прикладного программирования Internet-сервера (ISAPI) на основе библиотеки шаблонных классов ATL экспортируют функции GetExtensionVersion (получить версию расширения), HttpExtension-Proc (процедура HTTP-расширения) и TerminateExtension (завершить расширение). Кроме того, следуя традиционной манере, информационный сервер Internet (IIS) создает для каждого HTTP-запроса структуру EXTENSION_CONTROL_BLOCK (управляющий блок расширения). Она в качестве параметра передается в HttpExtensionProc. Эта структура обеспечивает доступ как к информации HTTP-заголовка, так и к потокам данных. Доступ к тому и другому нужен для поддержки связи с HTTP-клиентом.
Главной точкой входа для расширения интерфейса прикладного программирования Internet-сервера (ISAPI) является функция HttpExtensionProc. Она автоматически вызывается информационным сервером Internet (П5), если нужно обработать HTTP-запрос, который предназначен для расширения интерфейса прикладного программирования Internet-сервера (ISAPI) (ISAPI Extension). Для чтения клиентских данных и соответствующего реагирования HttpExtensionProc использует функции обратного вызова, предоставляемые параметром EXTENSION_CONTROL_BLOCK. На рис. 12.1 показана общая схема использования интерфейса прикладного программирования Internet-сервера (ISAPI) в Web-приложении, основанном на ATL Server.

1.gif

Рис. 12.1. Архитектура приложения, основанного на ATL Server

На рис. 12.1 показана только одна динамически подключаемая библиотека (DLL) расширения интерфейса прикладного программирования Internet-сервера (ISAPI). Это сделано потому, что в каждом виртуальном каталоге-информационного сервера Internet (IIS) может быть только одна такая библиотека. Еще ла рисунке видно, что в виртуальном каталоге может быть несколько динамически подключаемых библиотек (DLL) Web-приложения и несколько . srf-файлов. И хотя код в динамически подключаемой библиотеке (DLL) расширения интерфейса прикладного программирования Internet-сервера (ISAPI) можно настраивать, все же это обычно делается в динамически подключаемых библиотеках (DLL) Web-приложений, потому что именно в этих библиотеках реализуются обработчики запросов.


Архитектура приложения, использующего ATL server

страницы в данном разделе 
Глава 12. Web-узлы и Web-службы, работающие на основе ATL Server Web-узлы и Web-службы, работающие на основе ATL Server
История технологий, работающих с динамическим содержимым Web Приложения на основе ATL Server
ATL Server основан на интерфейсе прикладного программирования Internet-сервера (ISAPI) Архитектура приложения, использующего ATL server
Создание проекта ATL Server Project (Проект на основе ATL Server) Динамически подключаемая библиотека (DLL) расширения интерфейса прикладного программирования Internet-сервера (ISAPI)
Динамически подключаемая библиотека (DLL) Web-приложения Создание и запуск проекта на основе ATL Server
Добавление в сервер еще одного обработчика Добавление на сервер обработки управляющей структуры if-else-endif
Добавление на сервер обработки управляющей структуры while-endwhile Передача параметров серверному обработчику
Поддержка состояния сеанса Получение доступа к переменным сервера
Обработка форм Службы сеанса
Создание проекта Web-службы на основе ATL Server (ATL Server Web Service Project) Код Web-службы на основе ATL Server: ATLServerWebService.h
Создание клиентской программы, обращающейся к Web-службе Добавление функций в Web-службу на основе ATL Server
Изменение клиентской программы, работающей с Web-службой Передача структур в качестве входных и выходных параметров
Резюме >  


Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)



PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C



 
© faq.pp.ru, справочник программиста