Разработка HTML-форм и приложений, страница 8

Многопоточный режим работы расширения ISAPI создает доп. проблемы при отладке.

3. Технология активных серверных страниц ASP (Active Server Pages).

Является самой новой из рассмотренных технологий, была предложена Microsoft в 1997г. Общая концепция ASP совпадает с подходом, который реализован в приложениях CGI и ISAPI: приложение выполняется на сервере, а клиенту отправляется формируемый приложением HTML-документ. Однако в отличие от приложений CGI и ISAPI, ASP фактически представляют собой сервер автоматизации OLE Automation, выполняющийся на стороне web-сервера и выдающий HTML код в ответ на запросы, поступающих от клиентов. Т.к. язык HTML одинаково интерпретируется любыми браузерами, работающими на любых платформах, то не возникает проблем совместимости. На стороне клиента ASP выглядят как стандартный HTML-документ, который может просматриваться на любой программно-аппаратной платформе с использованием любого браузера. Наиболее существенным отличием ASP от приложений CGI и ISAPI является то, что ASP-приложение формирует не полный HTML-документ, а лишь его часть, добавляемую к исходному HTML-документу, из которого вызывается ASP-приложение. В одном исходном HTML-документе может содержаться несколько обращений к разным ASP-приложениям. Посылаемый клиенту результирующий HTML-документ формируется на основе откликов всех ASP-приложений.

Для создания ASP-приложения можно использовать любые системы разработки приложений, которые поддерживают технологию ActiveX (Delphi, MS Visual C++, Visual Basic). Кроме этого, код сценариев ASP, написанный на специальных языках: VBScript (диалект Visual Basic), JScript (Java Script от MS), может быть включен непосредственно в текст HTML-документа с помощью тегов <%   %>. Если в качестве приложения ASP используется откомпилированный сервер ActiveX, то для обращения к нему также можно использовать функции языка VBScript, которые помещаются в HTML-документ между тегами <% %>.

Пример кода (на языке VBScript): создание экземпляра COM-объекта с именем ASPObject, который принадлежит серверу ASPServer.

<% Set ASPObj = Server.CreatObject

 ("ASPServer.ASPObject")

       ASPObj.Content

%>