Как создать Http-запрос к другому серверу (URI) и вызвать его синхронно - PullRequest
4 голосов
/ 14 ноября 2011

У меня есть приложение ASP.net MVC3. В одном из моих контроллеров есть действие для отправки SMS некоторым пользователям нашего приложения. Теперь, по словам нашего SMS-провайдера, ему потребуется http-запрос на свой сервер (скажем, http://www.sms -sender-server.com ). Существует ряд параметров запроса, которые будут добавлены к этому URI. Затем необходимо отправить запрос на вышеуказанный URI с параметрами запроса, и сервер sms отправит код состояния (ответ) обратно, указывая, была ли отправка SMS неудачной или успешной. Я не уверен, как мы создаем такой запрос в ASP.net (или C #, если это кажется логичным). Если кто-нибудь может направить меня в правильном направлении, я был бы признателен.

Ответы [ 4 ]

3 голосов
/ 14 ноября 2011

Используйте класс WebClient .Это проще в использовании, чем WebRequest (и его производные).И внутри он тоже использует WebRequest.

2 голосов
/ 14 ноября 2011

Вам нужен класс WebRequest.Документация содержит образец:

// Create a new 'Uri' object with the specified string.
Uri myUri =new Uri("http://www.contoso.com");
// Create a new request to the above mentioned URL. 
WebRequest myWebRequest= WebRequest.Create(myUri);
// Assign the response object of 'WebRequest' to a 'WebResponse' variable.
WebResponse myWebResponse= myWebRequest.GetResponse();

Проверьте свойство StatusCode объекта WebResponse на предмет возвращенного статуса от поставщика SMS.

0 голосов
/ 15 ноября 2011

Я знаю, что заголовок вопроса специально задает вопросы о синхронных вызовах, но вы, возможно, действительно захотите заглянуть в контроллеры Async для запросов сторонних поставщиков по сети.

http://msdn.microsoft.com/en-us/library/ee728598(v=vs.98).aspx

0 голосов
/ 14 ноября 2011

Вы также можете использовать HttpWebRequest класс .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...