C# 如何更改HttpContent的标题

C# 如何更改HttpContent的标题,c#,httpclient,C#,Httpclient,我用这段代码将内容的标题从{text/plain;charset=utf-8}更改为“{application/json}” 有没有办法直接修改它,而不是删除并添加它?使用这个StringContent重载来设置内容类型 sc = new StringContent(content, Encoding.UTF8, "application/json"); 在此之后,您不需要添加/删除标题值。使用此重载的StringContent设置内容类型 sc = new StringContent(con

我用这段代码将内容的标题从
{text/plain;charset=utf-8}
更改为
“{application/json}”


有没有办法直接修改它,而不是删除并添加它?

使用这个
StringContent
重载来设置内容类型

sc = new StringContent(content, Encoding.UTF8, "application/json");

在此之后,您不需要添加/删除标题值。

使用此重载的
StringContent
设置内容类型

sc = new StringContent(content, Encoding.UTF8, "application/json");

在此之后,您不需要添加/删除标题值。

如果您通过序列化一些数据手动构建json字符串,那么有更好的方法。您可以使用扩展方法:

using (System.Net.Http.HttpClient client = new System.Net.Http.HttpClient())
{
    var response = await client.PostAsJsonAsync("http://foo.bar", data);
}
它将自动执行以下操作

  • 将数据序列化为JSON
  • 创建字符串内容
  • 提供正确的应用程序/json媒体类型

如果您通过序列化一些数据手动构建json字符串,那么有更好的方法。您可以使用扩展方法:

using (System.Net.Http.HttpClient client = new System.Net.Http.HttpClient())
{
    var response = await client.PostAsJsonAsync("http://foo.bar", data);
}
它将自动执行以下操作

  • 将数据序列化为JSON
  • 创建字符串内容
  • 提供正确的应用程序/json媒体类型

快速问题-如何获取
“一些json数据”
?您将其作为字符串,或者通过序列化一些数据手动创建字符串?您不能使用它吗?快速问题-如何获取
“一些json数据”
?您将其作为字符串,或者通过序列化某些数据手动创建字符串?您不能改用它吗?