WEB-ТЕХНОЛОГИИ Лекция 6

advertisement
WEB-ТЕХНОЛОГИИ
Лекция 6
Понятие Web-сервисов
1
Интерфейс в глобальную сеть для некоторого абстрактного программного
обеспечения, этот интерфейс позволяет фактически абсолютно прозрачно
выполнять какие-то функции, возложенные на это программное обеспечение на
удаленном компьютере
Программный интерфейс, который описывает набор операций, которые могут
быть вызваны удаленно по сети посредством стандартизированных XML
сообщений
Web-сервис не имеет специального пользовательского интерфейса (применение
в рамках концепции программа–программа, а не человек–программа)
W3C: Web-сервисом называется программная система, идентифицируемая
строкой URI, чьи публичные интерфейсы и привязки определены и описаны
посредством XML. Описание этой программной системы может быть найдено
другими программными системами, которые могут взаимодействовать с ней
согласно этому описанию посредством сообщений, основанных на XML, и
передаваемых с помощью Интернет-протоколов
Понятие Web-сервисов
2
Стадии работы:
1. Клиент формирует строку запроса и отсылает ее серверу
2. После получения строки сервер преобразует ее в вызов функции
3. Полученные структуры данных, в свою очередь, преобразуются в строку,
которая и передается клиенту
Свойства Web-сервисов
3
1. Модульность
2. Самодостаточность
3. Самоописываемость
4. Саморекламируемость
5. Строятся вокруг XML
6. Платформонезависимость
7. Независимость от языка программирования
8. Легко комбинируются друг с другом, невзирая на различия в платформе и
языке программирования
9. Базируются на стандартах
Цели Web-сервисов
1. Способность взаимодействия широкого набора платформ между собой
2. Надежность
3. Интеграция с глобальной сетью Интернет
4. Безопасность
5. Масштабируемость и расширяемость модели
4
XML
Структура Web-сервисов
UDDI
Публикация и поиск Web-сервисов
WSDL
Описание Web-сервисов
SOAP
Обмен сообщениями
HTTP, SMTP, FTP,...
Транспортная инфраструктура
5
Типы взаимодействия в Web-сервисах
6
― передача данных (запрос и ответ) в формате SOAP-сообщений
― использование механизма вызова удаленных процедур RPC (Remote Procedure
Call) для передачи данных и получения результатов в обращениях к
подпрограммам серверного объекта
Протокол SOAP
Базовый протокол, обеспечивающий взаимодействие в среде Web-сервисов
SOAP ― Simple Object Access Protocol
Протокол основан на HTTP-XML
Свойства:
1. Независимость от конкретной платформы и благодаря этому возможность
взаимодействия между различными платформами
2. Расширяемость
7
8
Протокол SOAP
SOAP Message
SOAP Part
SOAP Envelope
SOAP Header
Header
SOAP Body
XML Content
UDDI
9
Universal Description, Discovery and Integration – универсальное описание,
расположение и интеграция
Спецификация UDDI описывает базирующийся на протоколе SOAP web-сервис, в
задачи которого входит определение местоположения и описание протокола
взаимодействия любого web-сервиса
Сервер UDDI:
http://uddi.org
http://www.uddi-russia.org
WSDL
10
Web Service Description Language – язык описания web-сервиса
Платформонезависимая XML-производная для общего описания сетевых сервисов
как набора конечных точек, которые функционируют, обмениваясь сообщениями,
содержащими процедурно- или документально-ориентированную информацию
Описание Web-сервиса на языке WSDL содержит описание функций этого
сервиса, кому этот сервис принадлежит (компания, адрес и другие данные),
формальное описание процесса вызова функций
Части:
• «Описание данных» – содержит описание используемых типов.
• «Методы» – содержит в себе список web-сервисов и их методы.
XML
XML Web-сервисы
XML: платформонезависимый обмен данными
11
12
Схема работы Web-сервисов
Запрос
WSDL-интерфейс
Поставщик сервиса
SOAP
Ответ
WSDL-интерфейс
Получатель сервиса
13
Схема работы Web-сервисов
Сервер приложений
Реестр сервисов
Запрос сервиса из реестра
Регистрация
сервиса
Запрос
WSDL-интерфейс
Поставщик сервиса
SOAP
(HTTP)
Ответ
WSDL-интерфейс
Получатель сервиса
Download