Веб-сервисы являются компонентами веб-приложений.
Веб-службы могут быть опубликованы, нашли, и используется в Интернете.
Этот учебник представляет WSDL, SOAP, RDF и RSS.
WSDL
- WSDL расшифровывается Web Services Description Language
- WSDL представляет собой XML-язык для описания веб-сервисов.
- WSDL является рекомендацией W3C
МЫЛО
- SOAP означает протокол Simple Object Access
- SOAP является протоколом на основе XML для доступа к веб-службам.
- SOAP основан на XML
- SOAP является рекомендацией W3C
RDF
- RDF расшифровывается Resource Description Framework
- RDF является основой для описания ресурсов в Интернете
- RDF записывается в XML
- RDF является рекомендацией W3C
RSS
- RSS расшифровывается как Really Simple Syndication
- RSS позволяет синдикат содержание вашего сайта
- RSS определяет простой способ совместного использования и просмотра заголовки и содержание
- RSS файлы могут автоматически обновляться
- RSS позволяет персонализированные представления для различных сайтов
- RSS написано в XML
То, что вы уже должны знать
Перед тем, как изучать веб-службы вы должны иметь базовое понимание XML и пространствами имен XML.
Если вы хотите изучать эти предметы во- первых, пожалуйста , прочитайте наш XML Учебник .
веб-сервисы
- Веб-сервисы являются компонентами приложений
- Веб-сервисы для передачи информации используются открытые протоколы
- Веб-сервисы являются автономными и самоописываемыми
- Веб-сервисы могут быть обнаружены с помощью UDDI
- Веб-службы могут быть использованы в других приложениях
- HTTP и XML является основой для веб-служб
Функциональная совместимость имеет наивысший приоритет
Когда все основные платформы могли бы получить доступ к Интернету с помощью веб-браузеры, различные платформы не могут взаимодействовать. Для этих платформ для совместной работы, были разработаны Web-приложения.
Веб-приложения просто приложения, которые работают в Интернете. Они построены вокруг стандартов веб-браузера и может быть использовано любым браузером на любой платформе.
Web Services принимают Web-приложений на следующий уровень
С помощью веб-служб, ваше приложение может опубликовать свою функцию или сообщение для остальной части мира.
Web - сервисы используют XML для кодирования и для декодирования данных и SOAP , чтобы транспортировать его (using open protocols) .
С помощью веб-служб, биллинговая система Win 2k сервера бухгалтерии может соединиться с сервером UNIX вашего ИТ-поставщика.
Web Services имеют два типа использованию
Reusable application-components.
Есть вещи, которые нужны приложения очень часто. Так зачем они снова и снова?
Веб-сервисы могут предложить приложения-компоненты, такие как: конвертации валют, прогнозы погоды, или даже языкового перевода в качестве услуг.
Connect existing software.
Веб-сервисы могут помочь решить проблему совместимости путем предоставления различных приложений способ связать свои данные.
С помощью веб-сервисов вы можете обмениваться данными между различными приложениями и различными платформами.
Любое приложение может иметь компонент Web Service.
Веб-службы могут быть созданы независимо от языка программирования.
Веб-служба Пример
В следующем примере мы будем использовать ASP.NET для создания простого веб-службы, которая преобразует температуру от Фаренгейта в Цельсия, и наоборот:
<%@ WebService Language="VBScript" Class="TempConvert" %>
Imports System
Imports System.Web.Services
Public Class TempConvert :Inherits WebService
<WebMethod()> Public Function FahrenheitToCelsius
(ByVal Fahrenheit As String) As String
dim fahr
fahr=trim(replace(Fahrenheit,",","."))
if fahr="" or IsNumeric(fahr)=false then return "Error"
return ((((fahr) - 32) / 9) * 5)
end function
<WebMethod()> Public Function CelsiusToFahrenheit
(ByVal Celsius As String) As String
dim cel
cel=trim(replace(Celsius,",","."))
if cel="" or IsNumeric(cel)=false then return "Error"
return ((((cel) * 9) / 5) + 32)
end function
end class
Этот документ сохраняется в виде файла .asmx. Это расширение файла ASP.NET для веб-служб XML.
Пример Разъяснения
Note: Чтобы запустить этот пример, вам нужен сервер .NET.
Первая строка в примере , утверждает , что это веб - сервис, написанный на VBScript, и имеет имя класса "TempConvert" :
<%@ WebService Language="VBScript" Class="TempConvert" %>
Следующие строки импортировать пространство имен "System.Web.Services" из рамок .NET:
Imports System
Imports System.Web.Services
Следующая строка определяет , что "TempConvert" класс является типом класса WebService:
Public Class TempConvert :Inherits WebService
Следующие шаги являются основными программирования VB. Это приложение имеет две функции. Один конвертировать из Фаренгейта в Цельсия, и один, чтобы перевести градусы Цельсия в градусы Фаренгейта.
Единственное отличие от обычного приложения является то , что эта функция определяется как "WebMethod() ".
Используйте "WebMethod() " для преобразования функции в вашем приложении в веб - сервисов:
<WebMethod()> Public Function FahrenheitToCelsius
(ByVal Fahrenheit As String) As String
dim fahr
fahr=trim(replace(Fahrenheit,",","."))
if fahr="" or IsNumeric(fahr)=false then return "Error"
return ((((fahr) - 32) / 9) * 5)
end function
<WebMethod()> Public Function CelsiusToFahrenheit
(ByVal Celsius As String) As String
dim cel
cel=trim(replace(Celsius,",","."))
if cel="" or IsNumeric(cel)=false then return "Error"
return ((((cel) * 9) / 5) + 32)
end function
Затем положить конец класс:
end class
Опубликовать файл .asmx на сервере с поддержкой .NET, и вы будете иметь свой первый рабочий веб-службы.
Посмотрите на наш пример веб - службы
ASP.NET автоматизирует процесс
С помощью ASP.NET, вы не должны писать свои собственные WSDL и SOAP-документы.
Если посмотреть поближе на примере нашего веб - сервиса, вы увидите , что ASP.NET автоматически создает WSDL и SOAP - запрос.
Использование веб-службы Пример
В предыдущем разделе мы создали веб - службы .
FahrenheitToCelsius() функция может быть проверена здесь: FahrenheitToCelsius
CelsiusToFahrenheit() функция может быть проверена здесь: CelsiusToFahrenheit
Эти функции будут посылать ответ XML следующим образом:
<?xml version="1.0" encoding="utf-8" ?>
<string xmlns="http://tempuri.org/">38</string>
Установите веб-службы на свой веб-сайт
Используя форму и метод HTTP POST, вы можете поставить веб-сервиса на вашем сайте, как это:
Как это сделать
Вот код для добавления веб-службы на веб-странице:
<form
action='tempconvert.asmx/FahrenheitToCelsius'
method="post" target="_blank">
<table>
<tr>
<td>Fahrenheit to Celsius:</td>
<td>
<input class="frmInput" type="text"
size="30" name="Fahrenheit">
</td>
</tr>
<tr>
<td></td>
<td align="right">
<input type="submit"
value="Submit" class="button">
</td>
</tr>
</table>
</form>
<form
action='tempconvert.asmx/CelsiusToFahrenheit'
method="post" target="_blank">
<table>
<tr>
<td>Celsius to Fahrenheit:</td>
<td>
<input class="frmInput" type="text"
size="30" name="Celsius">
</td>
</tr>
<tr>
<td></td>
<td align="right">
<input type="submit"
value="Submit" class="button">
</td>
</tr>
</table>
</form>
Подставьте "tempconvert.asmx" с адресом веб - службы , как:
http://www.example.com/xml/tempconvert.asmx