Разработка распределенных приложений в Microsoft.NET Framework



         

Введение в веб службы


Веб службой или веб-сервисом (web service, WS) называется программная компонента, предоставляющая сервис удаленного вызова на основе группы стандартов WSI (Web Services Interoperability), основными из которых являются протокол обмена сообщениями SOAP, язык описания интерфейса WSDL, HTTP как основной транспортный протокол, а также XML и схемы XML. Для описания спецификаций формата сообщений в веб службах в настоящее время обычно используется схема XML и кодирование тела пакета SOAP Document.

Служба ASP.NET организует на основе данных стандартов сервис удаленного вызова методов объектов. ASP.NET создает и публикует WSDL описание веб службы на основе интерфейса класса .NET, обрабатывает приходящие от клиентов сообщения SOAP, вызывает методы объекта с извлеченными из сообщений SOAP параметрами, а затем передает клиенту сообщение с результатом выполнения метода (рис. 7.1). Таким образом, полное название промежуточной среды – веб службы ASP.NET.

Архитектура веб службы ASP.NET

Рис. 7.1.  Архитектура веб службы ASP.NET

Хотя с точки зрения прикладного разработчика использование веб службы представляется вариантом удаленного вызова через интернет, в основе веб служб лежит расширяемая технология обмена сообщениями SOAP, независимая от транспортного уровня. В частности, существуют стандарты, описывающие маршрутизацию сообщений SOAP, что придает веб службам признаки среды обмена сообщениями. Благодаря гибкой технологии возможно расширение промежуточной среды веб служб как по мере принятия новых стандартов, так и при необходимости в нестандартной обработке пакетов SOAP. Это возможно за счет фильтров SOAP, которые образуют трубопровод (pipeline), обрабатывающий пакеты SOAP. На платформе .NET Framework 2.0 за преобразование пришедшего по HTTP сообщения SOAP в вызов метода веб службы отвечает служба ASP.NET, а за организацию расширяемого набора фильтров SOAP – расширение, называемое WSE (Web Service Enhancements). В качестве приложения носителя для ASP.NET, получающего сообщение по транспортному протоколу, обычно используется служба Microsoft Internet Information Services, IIS (рис. 7.2).




Содержание    Вперед