用C#中的HttpClient发送JSON对象
本文关键字:JSON 对象 发送 HttpClient 中的 | 更新日期: 2023-09-27 17:59:12
好吧,我知道HttpClient.SendAsync()
可以用来发送HttpRequestMessage
,对于简单的字符串,请求方法可以设置为POST,内容可以设置为StringContent
。。。但在我的情况下,我想发送一个更复杂的JSON
字符串,看起来像这个
{
"requests": [
{
"image": {
"content": ""
},
"features": [
{
"type": "UNSPECIFIED",
"maxResults": 50
}
]
}
]
}
我尝试使用JavaScriptSerializer,但不知道如何创建一个表示这种json的对象。
await Browser.SendAsync(new HttpRequestMessage
{
RequestUri = new Uri("http://127.0.0.1/"),
Method = HttpMethod.Post,
Content = new StringContent(new JavaScriptSerializer().Serialize())
});
如果您想要此对象的C#代码,请使用RootObject类
public class Image
{
public string content { get; set; }
}
public class Feature
{
public string type { get; set; }
public int maxResults { get; set; }
}
public class Request
{
public Image image { get; set; }
public List<Feature> features { get; set; }
}
public class RootObject
{
public List<Request> requests { get; set; }
}
由提供http://json2csharp.com/
将类创建为@x。。。在评论中指出,以便构建您的树
public class features
{
public string type {get;set;}
public int maxResults {get;set;}
}
public class requests
{
public List<features> {get;set;}
... the same for images
}
填充它,序列化它并发送请求。。。