c# - 如何使用 C# 使用 HttpClient 发布 JSON?

标签 c# json asynchttpclient

我不知道如何使用 HttpClient 发布 JSON。我找到了一些解决方案,like this,但我必须使用 HttpClient,这是异步的原因,并且必须添加 header 。

下面是我的代码。知道如何解决吗?

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();

最佳答案

您可以使用方法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);
    }
}

如果要向请求添加自定义 header ,请将其添加到 DefaultRequestHeaders:

client.DefaultRequestHeaders.Add("mycustom", "header1");

关于c# - 如何使用 C# 使用 HttpClient 发布 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28468484/

相关文章:

c# - WCF 日志记录和统计

java - 将数据从 JSON 文件导入 Sencha Touch 存储

java - 从 json post 请求中检索 Java 对象

java - AsyncHttpClient 中的 ArrayList iterator.remove() 抛出 IllegalStateException

c# - MVC 到 Azure Active Directory 登录回复 "Bad Request"和消息 "Unable to create to obtain configuration from"

C#变量新鲜度

c# - C#中的Excel公式计算

ruby-on-rails - Rails,创建树状结构。 JSON输出

scala - 从 Play WS 获取 ahcResponse

scala - akka-http 没有堆栈跟踪或错误详细信息