Проблема универсального программного доступа в интернет достаточно велика и затрагивает не одну проблему, возникающую у разработчиков программного обеспечения, работающих в этой области. В результате объединения всех последних достижений и разработок в Microsoft было создано понятие Web-служб (Web Services). С помощью Web-служб объекты на сервере могут бесшовно принимать запросы, поступающие от клиентов, применяя наисовременнейшее решение для передачи данных – используя HTTP как основной протокол передачи информации и XML для кодировки пересылаемых данных. Основой Web-сервисов является ASP.NET. ASP.NET автоматически подключает готовую инфраструктуру, которая принимает поступающие через HTTP запросы и перенаправляет их объектам. Объединенные в составе Web-службы объекты могут работать с любым элементом Web, который связан с HTTP и XML. Иными словами, с любым сервером, независимо от его операционной системы и окружения периода выполнения, в котором он работает. При этом инфраструктура для связи через Web не требуется – она предоставлена .NET Framework.
Рис. 5 Взгляд на Web-службы ASP.NET со стороны сервера.
На стороне клиента .NET поддерживает прокси-класы, обеспечивающие простой доступ к Web-службам, которые предоставляет любой принимающий HTTP-запросы сервер.
Рис. 6 Взгляд на Web-службы ASP.NET со стороны клиента.
Средство разработки читает описание Web-службы и генерирует прокси-класс с функциями на любом языке, на котором ведется разработка на клиенте. При вызове одной из функций, прокси-класс создает HTTP-запрос и посылает его на сервер. Когда с сервера приходит ответ, прокси-класс выполняет синтаксический разбор результатов и возвращает их в виде значения функции. Это обеспечивает бесшовное взаимодействие клиента с любым сервером, работающим с HTTP и XML, т. е. фактически с любым сервером.
