Cамоучитель по VB.NET

         

Результаты обращения к 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. Как было показано в главе 9, результат представляет собой поток данных, используемый для построения StreamReader (строка 13). Строка 14 читает в строковую переменную весь текст потока. Строка 19 закрывает объект запроса HTTP и освобождает все связанные с ним ресурсы. Кстати, переменная myResponse была объявлена в строке 5 именно потому, что при объявлении ее в блоке Try (строки 6-15) переменная оказалась бы недоступной для секции Fi nal ly. Результат выполнения программы показан на Рисунок 12.7.



Содержание раздела