Форум программистов, компьютерный форум, киберфорум
Наши страницы

.NET

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
sergar
0 / 0 / 0
Регистрация: 03.03.2007
Сообщений: 140
#1

Получить XML из HTTP по методу POST - .NET

16.09.2009, 15:49. Просмотров 1280. Ответов 6
Метки нет (Все метки)

Подскажите, плз, как сделать такое:
Есть URL, если к нему обратьиться методом POST (GET не поддерживает) и передать пару нужных параметров - он в ответ возвращает правильный XML.
Этот XML мне и нужно загрузить в DataSet для дальнейшей обработки...

Это все должно быть в VB.NET
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.09.2009, 15:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Получить XML из HTTP по методу POST (.NET):

Загрузка XML по HTTP - .NET
Есть ли какие нибудь средства в .NET для осуществления сабжа ? Что нибудь аналогичное MSXML2.XMLHTTP. На данный момент имеем скрипт...

Http POST отправка файла в теле запроса - C#
Всем привет! Пытаюсь отправить файл на сервер, но со стороны сервера мне говорят, что нужно отправлять файл в теле запроса, не пойму как...

Отправка xml файла методом POST - C#
В классе XmlWriter создаётся файл. using (var xmlwrite = XmlWriter.Create( "send.xml", ...

Передать\считать xml структуру post запроса - C#
Здравствуйте уважаемые форумчане необходимо передать\получить post запрос с xml структурой ( т.е мне не надо передавать файлы и тд) ...

При попытке сделать Http POST запрос выдает каракули - Visual Basic .NET
Когда делаю запрос на страницу в русскими буквами, мне в ответе выдает квадратики Dim request As WebRequest =...

Как получить путь к файлу по методу drag and drop - Visual Basic .NET
Как получить путь к файлу путем перетаскивания его на форму программы или на ее ехе файл? Нет желания создавать кнопку с диалогом для...

6
M_Y_R
1 / 1 / 0
Регистрация: 15.10.2008
Сообщений: 282
16.09.2009, 17:00 #2
Пoпрoбуйте испoльзoвaть метoд DataSet.ReadXml()
0
sergar
0 / 0 / 0
Регистрация: 03.03.2007
Сообщений: 140
16.09.2009, 17:46  [ТС] #3
Вопрос в том, как получить методом POST этот самый XML?
0
M_Y_R
1 / 1 / 0
Регистрация: 15.10.2008
Сообщений: 282
16.09.2009, 18:10 #4
Вы-же скaзaли - 'возвращает правильный XML'. Тaк вoзврaщaет или нет?
0
sergar
0 / 0 / 0
Регистрация: 03.03.2007
Сообщений: 140
16.09.2009, 18:17  [ТС] #5
Возвращает.
Если простую форму на html- сделаю и нажму на кнопку Submit - получаю в броузере нормальный XML.
Мне же нужно, чтобы мое приложение на .NET само это делало.
Посылало (поддерживается только метод POST) HTTP запрос с параметрами и полученную информацию грузило в DataSet
0
monstrU
0 / 0 / 0
Регистрация: 30.11.2006
Сообщений: 510
17.09.2009, 06:56 #6
можно попробовать класс webrequest использовать. с его помощью запрос сделать, а результат через него получить
0
sergar
0 / 0 / 0
Регистрация: 03.03.2007
Сообщений: 140
17.09.2009, 15:35  [ТС] #7
Большое спасибо maratic_net (с форума GotDotNet.ru) c его помощью нарисовал то, что мне было нужно.
Вот (может, кому пригодится:

Public Function GetDataFromHost(ByVal sHOST As String, ByVal sQUERY As String) As DataSet
'возвращает DataSet с данными, полученными с удаленного хоста
'посылка осуществляется методом POST
'sHOST - URL страницы, к которой обращаемся
'sQUERY - сюда пишем параметры (как методом Get: first=1&second=2&...

Dim oReq As HttpWebRequest = CType(WebRequest.Create(sHOST), HttpWebRequest)
oReq.Method = 'POST' 'Устанавливаем метод POST
oReq.ContentType = 'application/x-www-form-urlencoded;charset=Windows-1251'
Dim encoding As New ASCIIEncoding()
Dim byte_arr As Byte() = encoding.GetBytes(sQUERY)
'Переводим строку в массив байтов
oReq.ContentLength = byte_arr.Length()
Dim oStream As Stream = oReq.GetRequestStream()
oStream.Write(byte_arr, 0, byte_arr.Length)
'пишем в поток
oStream.Close()

'анализируем ответ
Dim oResponse As HttpWebResponse
oResponse = oReq.GetResponse()
Dim DS As New DataSet()
'запихиваем XML в dataSet
DS.ReadXml(oResponse.GetResponseStream())
GetDataFromHost = DS
End Function

Пример вызова функции:
Dim DS As New DataSet()
DS = GetDataFromHost('http://www.qq.com/getXML.asp','day=10&type=qq')
...
0
17.09.2009, 15:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.09.2009, 15:35
Привет! Вот еще темы с ответами:

Отправка http POST запроса (xml) - Язык Go
Здравствуйте! Вопрос, наверное, глупый и, возможно, тривиальный, но я никак не могу разобраться и прошу вашей помощи. Пытаюсь получить...

Передача XML текста POST-запросом по протоколу HTTP - C#
Здравствуйте. Есть пакет следующей структуры: <Request Name="Alex" Age="22"> <State Enabled="1"> </State> </Report> ...

Как отправить на сервер xml запрос с помощью post и получить ответ в xml? - PHP Сети
нужно отправить на сервер xml запрос с помощью post и получить ответ в xml, погуглил нашел примеры, осталось лишь проверить примеры на...

Получить и сохранить XML файл через HTTP - C++
Есть код для отправки запроса и получения данных с последующей записью в XML файл,однако в начале файла есть какой-то мусор(непонятные...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.