Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/35: Рейтинг темы: голосов - 35, средняя оценка - 4.86
1 / 1 / 2
Регистрация: 23.09.2012
Сообщений: 70
1

Отправка POST запроса и получение ответа

30.01.2014, 20:02. Показов 6827. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть проблема. Нужно отправить на сайт POST запрос и в зависимости от этого запроса сайт выдает ответ(обычный echo).
Нужно отправить данный запрос и прочитать, что отдал сервер.
Есть также ограничение, реализация через HttpWebRequest и использование асинхронных функций.
Пробую делать так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
WebRequest request = HttpWebRequest.Create("http://192.168.43.2/login.php");
            request.Method = "POST";
            request.ContentType = "application/x-www-form-urlencoded";
            request.BeginGetRequestStream((reqResult) =>
            {
                using (Stream strm = request.EndGetRequestStream(reqResult))
                using (StreamWriter writer = new StreamWriter(strm))
                {
                    writer.Write("&login=" + HttpUtility.UrlEncode("1234"));
                }
                request.BeginGetResponse((result) =>
                {
                    try
                    {
                        var response = request.EndGetResponse(result);
                        RequestState myRequestState = (RequestState)result.AsyncState;
                        Stream responseStream = myRequestState.streamResponse;
                        string stringContent;
                        stringContent = myRequestState.requestData.ToString();
                        if (stringContent == "true") System.Windows.MessageBox.Show("OK!");
                        else System.Windows.MessageBox.Show("Not OK!");
                        response.Close();
                    }
                    catch (Exception ex)
                    {
                    }
                }, null);
            }, null);
В C# довольно недавно, поэтому и возникают проблемы. Запрос POST проходит, проверил. Ответ сервера получить не могу. Также есть проблема, если в BeginGetResponse вставляю MessageBox, то происходит исключение, с чем связанно понять не могу.
Буду рад за любую помощь!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.01.2014, 20:02
Ответы с готовыми решениями:

Посылка запроса POST и получение ответа в xml
Здравствуйте, товарищи. Как сформировать следующий запрос и отправить хосту? POST %2Fcommand...

Отправка POST запроса и получение куки
Стоит задача залогиниться на сайте https://lk2.service.nalog.ru/lk/index.html, используя метод POST...

Посылка запроса и получение ответа в xml
Как мне послать POST или GET запрос на определённый адрес. Например: ...

Сокеты(отправка байтов серверу и получение ответа)
Нужна книга,в которой будет подробно описана работа с сокетами,т.е добавление байтов CUint и т.д....

2
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
30.01.2014, 20:09 2
koljsch, не надо использовать BeginGetResponse, когда вы делаете GetResponse он внутри себя точно также асинхронно все это крутит, но для использования намного удобнее его же.
0
1 / 1 / 2
Регистрация: 23.09.2012
Сообщений: 70
31.01.2014, 06:14  [ТС] 3
Проблема в том, что я не могу использовать GetResponse. Использование BeginGetResponse принципиально.

Добавлено через 10 часов 1 минуту
Разобрался. Все же я не достаточно хорошо пользовался поиском.
Ответ в теме HttpWebRequest асинхронный post запрос
1
31.01.2014, 06:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.01.2014, 06:14
Помогаю со студенческими работами здесь

Получить текст ответа POST запроса при 400 ошибке
При отправке пост запроса сервер отдает ошибку 400 но отправляет текст в ответе. Вот я его и не...

Отправка POST запроса
Мне необходимо сделать ПО для авторегистрации на одном из сайтов. Делаю подобное первый раз. При...

Отправка POST запроса
Всем привет, нужно сделать код на C# чтобы он отправлял post запрос со следующим содержимым.

Отправка post-запроса С#
Доброго времени суток всем! Пытаюсь отправить пост-запрос на сайт. По идее в ответ должно придти...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru