2015-02-12 7 views
5

मैं पता नहीं HttpClient साथ JSON पोस्ट करने के तरीके,JSON को HttpClient के साथ कैसे पोस्ट करें?

मैं कुछ समाधान खोजने,

Like this

है लेकिन मैं HttpClient उपयोग करने के लिए है,

async के कारण और एक जोड़ने के लिए शीर्ष लेख,

इस नीचे मेरी कोड,

किसी भी विचार है कि यह कैसे तय करने के लिए है?

List<Order> list = new List<Order> { new Order() { Name = "CreatedTime", OrderBy = 1 } }; 

Queues items = new Queues { Orders = list }; 

var values = new Dictionary<string, string> { { "Orders", JsonConvert.SerializeObject(list) } }; 

var content = new FormUrlEncodedContent(values); 

//HttpContent cc = new StringContent(JsonConvert.SerializeObject(items)); 

_msg = await _client.PostAsync(input, content); 

//_msg = await _client.PostAsync(input, cc); 

var response = await _msg.Content.ReadAsStringAsync(); 

उत्तर

7

आप विधि PostAsJsonAsync एक्सटेंशन विधानसभाओं में पाया जा सकता है का उपयोग कर सकते हैं:

System.Net.Http.Formatting.dll 

उदाहरण

public static async Task SendJsonDemo(object content) 
{ 
    using(var client = new HttpClient()) 
    { 
     var response = await client.PostAsJsonAsync("https://example.com", content); 
    } 
} 

आप अनुरोध करने के लिए कस्टम हेडर जोड़ना चाहते हैं, तो उसे जोड़ने DefaultRequestHeaders:

client.DefaultRequestHeaders.Add("mycustom", "header1"); 
संबंधित मुद्दे