Основы создание web - служб. Лабораторная роботаРефераты >> Программирование и компьютеры >> Основы создание web - служб. Лабораторная робота
</s:element>
</s:schema>
</wsdl:types>
- <wsdl:message name="convertRub2EuroSoapIn">
<wsdl:part name="parameters" element="tns:convertRub2Euro" />
</wsdl:message>
- <wsdl:message name="convertRub2EuroSoapOut">
<wsdl:part name="parameters" element="tns:convertRub2EuroResponse" />
</wsdl:message>
- <wsdl:portType name="Service1Soap">
- <wsdl:operation name="convertRub2Euro">
<wsdl:input message="tns:convertRub2EuroSoapIn" />
<wsdl:output message="tns:convertRub2EuroSoapOut" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:binding name="Service1Soap" type="tns:Service1Soap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
- <wsdl:operation name="convertRub2Euro">
<soap:operation soapAction="http://localhost/myWebServices/convertRub2Euro" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="Service1Soap12" type="tns:Service1Soap">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
- <wsdl:operation name="convertRub2Euro">
<soap12:operation soapAction="http://localhost/myWebServices/convertRub2Euro" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:service name="Service1">
- <wsdl:port name="Service1Soap" binding="tns:Service1Soap">
<soap:address location="http://localhost/myWebService/Service1.asmx" />
</wsdl:port>
- <wsdl:port name="Service1Soap12" binding="tns:Service1Soap12">
<soap12:address location="http://localhost/myWebService/Service1.asmx" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Примитивная web – служба готова к использованию. Нажав на название функции, откроется следующая страница в которой помимо технической информации о службе присутствуют поля для ввода входных параметров созданной функции
Service1
Click here for a complete list of operations.
convertRub2Euro
Test
To test the operation using the HTTP POST protocol, click the 'Invoke' button.
Parameter |
Value |
num: | |
kurs: | |
SOAP
The following is a sample SOAP request and response. The placeholders shown need to be replaced with actual values. POST /myWebService/Service1.asmx HTTP/1.1Host: localhostContent-Type: text/xml; charset=utf-8Content-Length: lengthSOAPAction: "http://localhost/myWebServices/convertRub2Euro" <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <convertRub2Euro xmlns="http://localhost/myWebServices"> <num>double</num> <kurs>double</kurs> </convertRub2Euro> </soap:Body></soap:Envelope>HTTP/1.1 200 OKContent-Type: text/xml; charset=utf-8Content-Length: length <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <convertRub2EuroResponse xmlns="http://localhost/myWebServices"> <convertRub2EuroResult>string</convertRub2EuroResult> </convertRub2EuroResponse> </soap:Body></soap:Envelope>
HTTP POST
The following is a sample HTTP POST request and response. The placeholders shown need to be replaced with actual values. POST /myWebService/Service1.asmx/convertRub2Euro HTTP/1.1Host: localhostContent-Type: application/x-www-form-urlencodedContent-Length: length num=string&kurs=stringHTTP/1.1 200 OKContent-Type: text/xml; charset=utf-8Content-Length: length <?xml version="1.0" encoding="utf-8"?><string xmlns="http://localhost/myWebServices">string</string>
Введем сумму равную 12 и курс равный 12 в ресультат е после нажатия на кнопку invoke будет выдан результат в виде xml
<?xml version="1.0" encoding="utf-8" ?>
<string xmlns="http://localhost/myWebServices">144</string>
Здесь содержится посчитанный результат и тип данных которые необходимо использовать при работе с ними
3.2.2 Создание клиента для доступа к web службе.
Web – служба может быть использована приложением работающим на любой платформе. Создадим простейшее windows приложение конторе будет использовать созданную web – службу для перевода курса валют. Само приложение может находиться где угодно поэтом у этап создания windows приложения пропустим и приступим к подключению web – службы к нашему приложению.
В Solution Explorer -> Add Reference нажимаем правую кнопку мыши и выбираем Add Web Reference. В появившемся окне (рис. 3-5) выбираем Web services on the local machine, так как наша созданная web служба находиться на локальном компьютере. Если есть локальная сеть и служба доступна из нее то искать её естественно нужно в Browse UDDI Servers on the local network