问题描述
我想发送动态对象,例如
I want to send dynamic object like
new { x = 1, y = 2 };
作为HTTP POST消息的主体。所以我试着写
as body of HTTP POST message. So I try to write
var client = new HttpClient();
但我找不到方法
client.PostAsJsonAsync()
所以我尝试添加Microsoft将.AspNetCore.Http.Extensions包添加到project.json,并使用Microsoft.AspNetCore.Http.Extensions添加
So I tried to add Microsoft.AspNetCore.Http.Extensions package to project.json and add
using Microsoft.AspNetCore.Http.Extensions;
要使用子句。但是,这对我没有帮助。
to uses clause. However It didn't help me.
那么在ASP.NET Core中使用JSON正文发送POST请求的最简单方法是什么?
So what is the easiest way to send POST request with JSON body in ASP.NET Core?
推荐答案
您应该添加对 Microsoft.AspNet.WebApi.Client包的引用(阅读适用于样本)。
You should add reference to "Microsoft.AspNet.WebApi.Client" package (read this article for samples).
如果没有任何其他扩展名,则可以使用标准的 PostAsync
方法:
Without any additional extension, you may use standard PostAsync
method:
client.PostAsync(uri, new StringContent(jsonInString, Encoding.UTF8, "application/json"));
其中 jsonInString
的值可以通过调用 JsonConvert.SerializeObject(<您的对象>);
where jsonInString
value you can get by calling JsonConvert.SerializeObject(<your object>);
这篇关于使用HttpClient PostAsJsonAsync在ASP.NET Core中发送HTTP POST消息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!