Веб-сервисы и ASP.NET
Веб-службы можно создавать, используя архитектуру ASP.NET
При работе с Веб-сервисами существуют две фундаментальные роли:
Создание Веб-сервиса
Обращение к Веб-сервису
ASP.NET позволяет создавать Веб-сервисы, к которым можно обращаться из клиентского сценария страниц:
Страницы взаимодействуют с сервером посредством уровня связи, использующего технологию AJAX для вызова Веб-служб
Обмен данными между клиентом и сервером осуществляется асинхронно, как правило, в формате JSON
2
Клиентская архитектура технологии AJAX
Существует два подхода к вызовам методов Веб-сервиса:
с помощью команды POST HTTP
с помощью команды GET HTTP
Основные элементы уровня связи Веб-служб:
WebRequest
WebRequestManager
XmlHttpExecutor
JSON-сериализация
5
Создание Веб-сервиса
Веб-сервисы создаются в управляемом коде с помощью платформы ASP.NET:
Создается файл с расширением ASMX
Файл содержит класс, помеченный атрибутом WebService
Класс содержит один или несколько открытых методов, перед которыми ставится атрибут WebMethod
Веб-сервисы состоят из двух частей:
Точка входа Веб-сервиса (в ASP.NET – ASMX-файл)
Код, который реализует функциональность Веб-сервиса (ASMX-файл ссылается на код в предкомпилированных сборках, файл с выделенным кодом или на код, содержащийся в самом ASMX-файле)
7
Технология Jasp
Jasp является библиотекой для разработки Веб-приложений с использованием платформы Microsoft .NET Framework
Повторное использование компонент
Наследование, как серверной части, так и клиентских частей: JavaSctpt, CSS и разметки
Автоматическая загрузка ресурсов (синхронно или асинхронно)
Используется со всеми распространенными JavaScript-библиотеками: jQuery, ExtJS, Prototype и т.п.
8
Решение проблем ASP.NET
Различные трудности, возникающие при связи серверной и клиентской части компонента
Огромный размер ViewState
Использование ASP.NET Ajax зачастую приводит к непредсказуемым результатам
Ресурсы, загружаемые с помощью WebResource.axd
При большой вложенности компонент получаем огромные ClientID
Нет возможности полноценного наследования компонент
При создании WebControl’ов создание дочерних компонент приходится делать вручную
При создании UserControl’ов, их нельзя использовать в других проектах
9
Ресурсы в Jasp
При загрузке страницы, Jasp определяет, какие ресурсы используются на странице
CSS ресурсы
JavaScript ресурсы
HTML ресурсы
Бинарные ресурсы
Jasp группирует все CSS и JavaScript файлы в один CSS и один JavaScript файл и добавляет специальные ссылки в HTML разметку, по которым они подгружаются браузером
10
Страницы и компоненты в Jasp
Для создания страницы, необходимо создать класс, наследующий от класса Jasp.Web.UI.Page
Для создания компонент, необходимо создать класс, наследованный от класса Jasp.Web.UI.UserControl
Создание экземпляра компонента:
программно, на серверной стороне
через разметку, на серверной стороне
синхронно или асинхронно на клиентской стороне
11
Наследование компонент и страниц в Jasp
Jasp поддерживает наследование компонент как на серверной стороне, так и на клиентской:
Наследование HTML
Наследование CSS
Наследование JavaScript
У компонента наследуются все ресурсы от базового
Для наследования компонент, достаточно унаследовать серверный класс
12
Конфигурирование Jasp
Jasp конфигурируется с помощью собственной секции в файле web.config
Например:
Параметр resourceFilter определяет класс, экземпляр которого будет заниматься фильтрацией текстовых ресурсов
Параметр exceptionFormatter используется для указания класса, экземпляр которого форматирует исключение при RPC-вызовах в JSON-объект
13
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.