2012-03-14 2 views
0

Мой вопрос довольно прост, но я не могу найти никакой информации об этом в Интернете.Как выполнить POST с веб-api?

Я разрабатываю приложение для Windows-телефона, и я хочу использовать веб-api (из MVC 4) для получения, установки и обновления.

Я уже сделал все методы GET, и они отлично работают. Мой вопрос: как я могу выполнить POST с URL-адреса (и добавить данные в мою базу данных)?

Что-то вроде этого: http://someurl.com/api/post/username/parameter1/parameter2

это вообще возможно ли? Иначе, как еще я могу решить эту проблему?

+0

Вы смотрели на http://www.codeproject.com/Articles/344078/ASP-NET-WebAPI-Getting Started-с-MVC4--и-WebAP? –

+0

Да, но я не знаю, как выполнить пост, чтобы он запускал код. – Vincent

+0

Вы хотите опубликовать сообщение из родного приложения? –

ответ

1

Просто используйте RestSharp для всех ваших работ WebApi в Windows Phone.

Поверьте мне, когда я скажу, что это сэкономит вам время разработки!

(Для того, чтобы сказать правду, я почти никогда не использовать WebRequest непосредственно в моих приложений, и просто идти вперед с RestSharp ...)

0

Есть два варианта:

WebClient.UploadStringAsync

WebClient client = new WebClient(); 
client.UploadStringCompleted += OnUploadStringCompleted; 
client.UploadStringAsync(new Uri("http://someurl.com/api/post/username/parameter1/parameter2", UriKind.Absolute), "Data to upload goes here"); 

или

HttpWebRequest.BeginGetRequestStream

Там в полный пример на this MSDN page.

Надеюсь, что это поможет!

+0

Когда я попробую приведенный выше код, он не публикуется. Я просто хочу выполнить url в фоновом режиме. Когда я вхожу в url в браузере, он выполняет штраф. Но как это сделать в Windows Phone? – Vincent

+1

Если он работает через браузер, ваш сервер не отвечает на POST, а в GET. Вы пытались использовать ['WebClient.DownloadStringAsync'] (http://msdn.microsoft.com/en-us/library/ms144202 (v = vs.95) .aspx)? – alf

Смежные вопросы