2015-10-20 2 views
0

Я потребляю mvc 4 webapi service.Как использовать mvc 4 webapi-сервис с помощью httpwebrequest

string postData = string.Format("user={0}&pwd={1}", "me", "123"); 
      HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create("http://sb2212.myaddresss.in/api/values/pavan?id=1&srt=2"); 
      webRequest.Method = "post"; 
      webRequest.ContentType = "application/json; charset=utf-8"; 
      webRequest.ContentLength = postData.Length; 
      try 
      { 
       using (StreamWriter requestWriter2 = new StreamWriter(webRequest.GetRequestStream())) 
       { 
        requestWriter2.Write(postData); 
       } 

       using (StreamReader responseReader = new StreamReader(webRequest.GetResponse().GetResponseStream())) 
       { 
        // dumps the HTML from the response into a string variable 
        postData = responseReader.ReadToEnd(); 
       } 

ответ «ОК», но я получаю пустой ответ. выход «".

ответ

0

вы можете использовать HttpClientPostAsJson, объект post должен быть объектом Json, который не закодирован в форме.

var postData = JsonConvert.DeserializeObject(string.Format("{user={0},pwd={1}}", "me", "123")); 


    using (var client = new HttpClient()) 
       { 
        string URL= "http://sb2212.myaddresss.in/api/values/pavan?id=1&srt=2"; 
        var response = await client.PostAsJsonAsync(URL, postData); 
        var result= await response.Content.ReadAsStringAsync(); 
        var resultobj = JsonConvert.DeserializeObject(result) 

       } 
+0

HttpClient не работает для me.it показывает пространство имен couldnot быть найдены с помощью –

+0

System.Net.Http; если у вас есть .net 4.0 https://www.nuget.org/packages/Microsoft.Net.Http/ – SilentTremor

+0

с использованием Newtonsoft.Json; установить с помощью nuget – SilentTremor

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