Использование web-службы на стороне клиента
Если щелкнуть на ссылке GetWeather на рис. 12.4, в броузере загружается страница, показанная на рис. 12.5. На странице приведен код, который может использоваться для обращения к web-службе. В разделе «SOAP» описывается доступ к службе через протокол SOAP, основанный на XML. Этот протокол отличается наибольшей гибкостью, но простым его не назовешь. В простейшем варианте обращения к web-службе используется запрос HTTP GET. Прототип выглядит следующим образом:
/WebServicel/Servicel.asmx/
GetWeather?city=string НTTР/1.1
Host:Local Host

Рис. 12.5. Простейший вариант использования web-службы
Введите в текстовом поле строку Seattle и нажмите кнопку Invoke. Примерный вид страницы показан на рис. 12.6.

Рис. 12.6. Результаты обращения к web-службе
Результат представлен в формате XML, что позволяет легко проанализировать данные в программе. Также обратите внимание на то, что в автоматически сгенерированном коде показано, как обращаться к web-службе за пределами IDE. Для этого необходимо лишь сгенерировать правильный запрос HTTP GET или SOAP. Ниже приведен пример построения запроса GET в консольном приложении, использующем для отправки запроса GET классы WebRequest и WebResponse пространства имен System.Net:
1 Imports System.Net
2 Imports System.I0
3 Module Module1
4 Sub Main()
5 Dim myResponse As WebResponse
6 Try
7 Dim myWebServiceRequest As WebRequest
8 myWebServiceRequest - WebRequest.Create _
9 ("http://localhost/WebServicel/Servicel.
asmx/GetWeather?dty=SeattIe")
10 myResponse = _
11 myWebServiceRequest.GetResponse()
12 Dim theAnswer As String
13 Dim aStream As New StreamReader
(myResponse.GetResponseStream)
14 theAnswer = aStream.ReadToEnd
15 MsgBox(theAnswer)
16 Catch e As Exception
17 Console.WriteLine(e.Message)
18 Finally
19 myResponse. Close()
20 End Try
21 End Sub
22 End Module
Ключевая роль в этом листинге принадлежит строке 8 (продолжающейся в строке 9), в которой серверу передается запрос GET.
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий