Биты и байты.

Биты и байты.

вторник, 22 октября 2013 г.

Веб сервисы и WSDL файлы

Сегодня пришлось столкнуться с веб сервисами и WSDL файлами. Так зачем же нужны эти веб сервисы?
Сделать из веб сервера сервер приложений, который с клиентом будет обмениваться XML подобными сообщениями.

Как пользоваться, берем любой веб сервис  пример
Загоняем в soapclient пример

Получаем список методов для запросов, берем подходящий например курс валюты на дату
Вводим дату и жмем кнопку ПУСК (точнее Invoke)



Получаем результат  в виде XML и радуемся что все работает)


Ниже описание самой технологии веб сервисов




SOAP протокол обмена сообщениями между клиентом и сервером, в качестве транспорта используется протокол HTTP
WSDL язык описания веб сервисов и доступа к ним, основанный на языке XML.
UDDI (Universal Discovery, Description and Integration) — универсальный интерфейс распознавания, описания и интеграции, используемый для формирования каталога веб-сервисов и доступа к нему.


Элемент WSDL 2.0
Краткое описание
Interface
Представляет описание интерфейса веб-сервиса (список операций и их параметров).
Service
Список системных функций
Binding
Специфицирует интерфейсы и задает параметры связывания с протоколом SOAP: стиль связывания (RPC/Document) и транспорт (SOAP). Эта секция доступна и для каждой из операций
Operation
Определяет операцию, представляемую веб-сервером. WSDL-операция — это аналог традиционным функциям и процедурам.
не использ.
Сообщение, связанное с определенной операцией. Содержит информацию, необходимую для выполнения данной операции. Каждое сообщение может состоять из нескольких логических частей, описывающих типы данных и имена атрибутов. В версии 2.0 было исключено, т.к. была внедрена поддержка XML Schema для всех элементов.
Types
Описание данных в соответствии с XML Schema.



SOAP

SOAP (изначально Simple Object Access Protocol, а в версии 1.2 официальная расшифровка аббревиатуры отсутствует) — простой протокол доступа к объектам (компонентам распределенной вычислительной системы), основанный на обмене структурированными сообщениями. Как любой текстовый протокол, SOAP может использоваться с любым протоколом прикладного уровня: SMTP, FTP, HTTPS и др., но чаще всего SOAP используется поверх HTTP.
Все сообщения SOAP оформляются в виде структуры, называемой конвертом (envelop), включающей следующие элементы:
  • Идентификатор сообщения (локальное имя).
  • Опциональный элемент Header (заголовок):
    • Ноль или более ссылок на используемые пространства имен;
    • Ноль или более свойств, доступных в этом пространстве имен.
  • Обязательный элемент Body (тело сообщения)
    • Ноль или более ссылок на используемые пространства имен;
    • Дочерние элементы тела сообщения
Развернутый список элементов сообщения SOAP приведен в схеме данных (для SOAP версии 1.2).
Пример сообщения SOAP:
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
 <env:Header>
 <n:alertcontrol xmlns:n="http://example.org/alertcontrol">
 <n:priority>1</n:priority>
 <n:expires>2001-06-22T14:00:00-05:00</n:expires>
 </n:alertcontrol>
 </env:Header>
 <env:Body>
 <m:alert xmlns:m="http://example.org/alert">
 <m:msg>Get up at 6:30 AM</m:msg>
 </m:alert>
 </env:Body>
</env:Envelope>


В итоге что имеем
Достоинства
  • Обеспечивают взаимодействие программных систем независимо от платформы.
  • Основаны на базе открытых стандартов и протоколов.
  • Использование HTTP позволяет приложениям взаимодействовать через межсетевой экран.
Недостатки
  • Меньшая производительность и больший объем сетевого трафика по сравнению с такими технологиями как CORBA или DCOM.

About