logo
Проектирование инт-прил / лекции / Проектирование инет приложений

Web-сервисы

Web-приложение направлено на работу с пользователем и имеет пользовательский интерфейс. В противоположность этому,Web-сервис работает - либо с другимиWeb-сервисами, либо сWeb-приложениями. Обмен при этом происходит точно так же, как и в случае с приложениями, то есть по схеме "запрос-ответ". В качестве "клиента" может выступать любая программа, которая может правильно сформироватьHTTP-запрос и расшифровать полученныйHTTP-ответ. Однако для общения стандартной версииHTMLможет оказаться недостаточно, поэтому используются его расширения:JSON,XML-RPC,SOAP,RESTи так далее. Общая схема работыWeb-сервиса представлена на рис.

Для описания сервиса существует специальный язык, называемый WSDL(WebServiceDefinitionLanguage). При помощиWSDLможно запросить уWeb-сервиса сведения о существующих методах и необходимых параметрах. То есть получить полную описательную информацию о предоставляемом сервисе. Кроме собственно информативной составляющей,WSDLнесет и другую нагрузку: на его основе строятся различные средства автоматизированного проектированияWeb-сервисов - программные средства, позволяющие изWSDLфайла создавать скелеты классов и наоборот.

Информация по нескольким Web-сервисам может (но не обязательно) каталогизироваться при помощиServiceBroker. НаличиеServiceBrokerпозволяет облегчить поиск нужного сервиса со стороны заказчика (ServiceRequester). Для работы сServiceBrokerсуществует специальный интерфейс, называемыйUDDI-UniversalDiscovery,DescriptionandIntegration- универсальный интерфейс распознавания, описания и интеграции.

В современном интернете существует множество Web-сервисов. В качестве примера можно указать Яндекс.XMLСуществует всем известная поисковая система Яндекс. Однако для ее использования не обязательно заходить наhttp://yandex.ru. Вы можете использовать ее в любом созданном Вами приложении (и не обязательноWeb-ориентированном). Сервис Яндекс.XMLпозволяет обратиться с запросом к самой поисковой системе, получить результат выполнения этого запроса - в видеXML- и использовать полученный результат в своем приложении. Разумеется, при этом существует вопрос лицензионности: Вам придется пройти ряд предписанных Яндексом шагов и обязательно указать в своем приложении ссылку, на основе чего сформирован данный ответ. Но суть остается прежней: Вам предлагается некий сервис, данные из которого Вы можете использовать по своему усмотрению.

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4