【发布时间】:2014-09-12 00:17:15
【问题描述】:
我正在尝试使用 HttpClient 通过 POST 将 json 发送到我的网络服务。
发送方法真的很简单:
HttpClient _httpClient = new HttpClient();
public async Task<HttpStatusCode> SendAsync(Data data)
{
string jsonData = JsonConvert.SerializeObject(data);
var content = new StringContent(
jsonData,
Encoding.UTF8,
"application/json");
HttpResponseMessage response = await _httpClient.PostAsync(_url, content);
return response.StatusCode;
}
在服务器端,我有 WebAPI 控制器,方法如下:
[HttpPost]
[ActionName("postdata")]
public async Task<HttpResponseMessage> PostData([FromBody] string jsonParam)
{
/// here the jsonParam is null when receiving from HttpClient.
// jsonParam gets deserialized, etc
}
这个方法中的jsonParam是null。 jsonData 很好,如果我将其复制并粘贴到请求发件人(我使用邮递员)中,一切都会成功。
这是关于我如何构建内容和使用HttpClient,但我不知道出了什么问题。
谁能看到这个问题?
【问题讨论】:
标签: c# .net asp.net-web-api