Что такое веб-службы?
Разные книги и разные организации дают разные определения веб-службам. Некоторые из них перечислены здесь.
Веб-служба - это любое программное обеспечение, которое становится доступным через Интернет и использует стандартизированную систему обмена сообщениями XML. XML используется для кодирования всех сообщений веб-службы. Например, клиент вызывает веб-службу, отправляя сообщение XML, а затем ожидает соответствующего ответа XML. Поскольку все коммуникации происходят в XML, веб-сервисы не привязаны к какой-либо одной операционной системе или языку программирования - Java может взаимодействовать с Perl; Приложения Windows могут взаимодействовать с приложениями Unix.
Веб-сервисы - это автономные, модульные, распределенные, динамические приложения, которые можно описывать, публиковать, размещать или вызывать по сети для создания продуктов, процессов и цепочек поставок. Эти приложения могут быть локальными, распределенными или веб-приложениями. Веб-службы построены на основе открытых стандартов, таких как TCP / IP, HTTP, Java, HTML и XML.
Веб-сервисы - это системы обмена информацией на основе XML, которые используют Интернет для прямого взаимодействия между приложениями. Эти системы могут включать программы, объекты, сообщения или документы.
Веб-сервис - это набор открытых протоколов и стандартов, используемых для обмена данными между приложениями или системами. Программные приложения, написанные на разных языках программирования и работающие на различных платформах, могут использовать веб-службы для обмена данными по компьютерным сетям, таким как Интернет, аналогично межпроцессному обмену данными на одном компьютере. Эта функциональная совместимость (например, между приложениями Java и Python или Windows и Linux) обусловлена использованием открытых стандартов.
Таким образом, полный веб-сервис - это любой сервис, который:
Доступен через Интернет или частные (интранет) сети
Использует стандартизированную систему обмена сообщениями XML.
Не привязан к какой-либо одной операционной системе или языку программирования
Самоописывается через общую грамматику XML
Обнаруживается с помощью простого механизма поиска
Компоненты веб-служб
Базовая платформа веб-сервисов - это XML + HTTP. Все стандартные веб-службы работают с использованием следующих компонентов -
SOAP (простой протокол доступа к объектам)
UDDI (универсальное описание, открытие и интеграция)
WSDL (язык описания веб-служб)
Все эти компоненты обсуждались в главе « Архитектура веб-служб» .
Как работает веб-служба?
Веб-служба обеспечивает связь между различными приложениями с использованием открытых стандартов, таких как HTML, XML, WSDL и SOAP. Веб-сервис требует помощи -
XML для маркировки данных
SOAP для передачи сообщения
WSDL для описания доступности службы.
Вы можете создать веб-службу на основе Java в Solaris, доступную из вашей программы Visual Basic, работающей в Windows.
Вы также можете использовать C # для создания новых веб-служб в Windows, которые можно вызывать из вашего веб-приложения, основанного на JavaServer Pages (JSP) и работающего в Linux.
пример
Рассмотрим простую систему управления аккаунтом и обработки заказов. Бухгалтерский персонал использует клиентское приложение, созданное на Visual Basic или JSP, для создания новых учетных записей и ввода новых заказов клиентов.
Логика обработки для этой системы написана на Java и находится на машине Solaris, которая также взаимодействует с базой данных для хранения информации.
Шаги для выполнения этой операции следующие:
Клиентская программа объединяет информацию о регистрации учетной записи в сообщение SOAP.
Это сообщение SOAP отправляется веб-службе как тело запроса HTTP POST.
Веб-служба распаковывает запрос SOAP и преобразует его в команду, понятную приложению.
Приложение обрабатывает информацию по мере необходимости и отвечает новым уникальным номером счета для этого клиента.
Затем веб-служба упаковывает ответ в другое сообщение SOAP, которое отправляет обратно клиентской программе в ответ на свой HTTP-запрос.
Клиентская программа распаковывает сообщение SOAP, чтобы получить результаты процесса регистрации учетной записи.