大家好, 我试图将对象发送到API。 而我遇到了一个错误
[HttpPost]
public async Task<object> Upsert(int Base, int SubBase,object val)
{
using (var client = new HttpClient())
{
client.BaseAddress = new Uri("http://localhost:50442/");
client.DefaultRequestHeaders.Clear();
HttpResponseMessage response = await client.PostAsJsonAsync("M01_Upsert/" + val, val);
response.EnsureSuccessStatusCode();
return response.Headers.Location;
}
}
这是我正在调用的API函数
[HttpPost]
public void M01_Upsert(object val)
{
var data = val;
}
我怎么称呼它?我做得对吗?这给我一个关于调用方法的错误。
答案 0 :(得分:1)
尝试删除添加到帖子URL的[val]。
因此更改以下代码行:
HttpResponseMessage response = await client.PostAsJsonAsync("M01_Upsert/" + val, val);
收件人:
HttpResponseMessage response = await client.PostAsJsonAsync("M01_Upsert", val);
在POST请求中,有效负载不应成为URL参数的一部分。您将它作为参数传递给PostAsJsonAsync
方法。