
- •14. Применение Веб-методов. Технология Jasp
- •14.1. Веб-сервисы
- •14.1.1. Введение
- •14.1.2. Веб-службы в asp.Net
- •14.1.3. Доступ к Веб-сервисам в управляемом коде
- •14.1.3.1. Взаимодействие клиент-сервер для клиентов ajax
- •14.1.3.2. Клиентская архитектура технологии ajax
- •14.1.3.3. Серверная архитектура ajax
- •Xml-сериализация. Уровень связи Веб-служб поддерживает xml-сериализацию для soap-запросов к Веб-службам и возвращения типов xml по json-запросам к Веб-службам.
- •14.1.4. Создание Веб-сервиса
- •14.1.4.1. Директива обработки WebService
- •14.1.5. Выполнение http-запросов из клиентского сценария ajax
- •14.1.6. Предоставление доступа к Веб-службам в клиентском сценарии
- •14.1.6.1. Предоставление доступа к сервисам из клиентского сценария на Веб-странице asp.Net
- •14.1.6.2. Примеры
- •14.1.7. Ключевые термины
- •14.2. Технология Jasp
- •14.2.1. Введение
- •14.2.2. "Hello World" на Jasp
- •14.2.3. Создание страницы с разметкой, скриптом и стилями
- •14.2.4. Ресурсы в Jasp
- •14.2.4.1. Css ресурсы
- •14.2.4.2. JavaScript ресурсы
- •14.2.4.3. Html ресурсы
- •14.2.4.4. Бинарные ресурсы
- •14.2.5. Страницы и компоненты
- •14.2.5.1. Создание страниц
- •14.2.5.2. Создание компонент
- •14.2.5.2.1. Создание экземпляров компонент программно
- •14.2.5.2.2. Создание экземпляров компонент через разметку
- •14.2.5.2.3. Создание экземпляров компонент на JavaScript
- •14.2.6. Передача данных на клиентскую сторону
- •14.2.7. Наследование компонент и страниц
- •14.2.7.1. Наследование разметки
- •14.2.7.2. Наследование стилей
- •14.2.7.3. Наследование JavaScript
- •14.2.8. Конфигурирование Jasp
- •14.2.9. Ключевые термины
- •14.3. Краткие итоги
14.1.3.3. Серверная архитектура ajax
На рис. 14.3 показана серверная архитектура AJAX, включающая элементы, обеспечивающие взаимодействие с клиентскими приложениями.
Рис. 14.3. Серверная архитектура AJAX
Элементы серверной архитектуры включают уровень связи Веб-служб, обработчик HTTP-данных и классы сериализации, пользовательские службы, методы страниц и службы приложений. На рисунке показаны следующие отдельные элементы:
Пользовательские Веб-службы. Предоставляют функциональную возможность службы, реализуемую пользователями, и возвращают соответствующий ответ клиентскому приложению. Пользовательскими Веб-службами могут быть службы ASP.NET или WCF. Уровень связи Веб-служб автоматически создает прокси-классы клиентского сценария, которые могут быть вызваны асинхронно из клиентского сценария.
Методы страниц. Этот компонент позволяет вызывать метод страницы ASP.NET так, как если бы он был методом Веб-службы. Методы страниц должны быть определены на странице, с которой осуществляется вызов метода страницы.
Служба проверки подлинности. Служба проверки подлинности создает прокси-класс проверки подлинности, который позволяет пользователю осуществлять вход и выход из системы с помощью клиентского сценария JavaScript.
Служба ролей. Служба ролей создает прокси-класс ролей, который позволяет осуществлять доступ из клиентского сценария JavaScript к сведениям о ролях для текущего пользователя, прошедшего проверку подлинности.
Служба профилей. Служба профилей создает прокси-класс профилей, который позволяет клиентскому сценарию JavaScript получать и задавать свойства для пользователя, связанного с текущим запросом.
JSON-сериализация. Серверный компонент JSON-сериализации позволяет выполнять настраиваемую сериализацию и десериализацию общих типов .NET Framework в формат JSON и из него.
Xml-сериализация. Уровень связи Веб-служб поддерживает xml-сериализацию для soap-запросов к Веб-службам и возвращения типов xml по json-запросам к Веб-службам.
14.1.4. Создание Веб-сервиса
Веб-сервисы создаются в управляемом коде с помощью платформы ASP.NET. Сначала создается файл с расширением ASMX [7]. Этот файл содержит класс, помеченный атрибутом WebService, который служит для обозначения открытого класса, реализующего логику Веб-сервиса. Этот класс Веб-сервиса содержит один или несколько открытых методов, подлежащих публикации в составе Веб-сервиса. Перед этими методами ставится атрибут WebMethod. Среда ASP.NET отвечает за реализацию инфраструктуры публикации этих методов в составе Веб-сервиса.
Веб-сервисы состоят из двух частей: точка входа Веб-сервиса и код, который реализует его функциональность. В ASP.NET точкой входа для Веб-сервиса служит текстовый ASMX-файл. Он ссылается на код в предкомпилированных сборках, файл с выделенным кодом, или на код, содержащийся в самом ASMX-файле.
При построении Веб-сервиса в управляемом коде среда ASP.NET автоматически обеспечивает инфраструктуру и обрабатывает запросы и ответы Веб-сервиса, в том числе занимаясь разбором и формированием сообщений SOAP.