调用 WebApi 端点传入对象
Call WebApi Endpoint Passing in Object
我有以下端点
[HttpPost]
[DisableRequestSizeLimit]
[RequestFormLimits(KeyLengthLimit = int.MaxValue)]
public IActionResult PostData([FromForm]Data data)
数据 class 看起来像这样
public class Data
{
public string A { get; set; }
public string B { get; set; }
}
我是这样调用这个端点的
var url = ...;
var client = new HttpClient();
var data = new
{
a = "Foo",
b = "Bar"
};
var result = await client.PostAsJsonAsync(url, data);
但是PostData方法中的数据参数总是为空。知道我做错了什么吗?
如果您的内容类型是 application/json
,请使用 [FromBody]
而不是 [FromForm]
。
我有以下端点
[HttpPost]
[DisableRequestSizeLimit]
[RequestFormLimits(KeyLengthLimit = int.MaxValue)]
public IActionResult PostData([FromForm]Data data)
数据 class 看起来像这样
public class Data
{
public string A { get; set; }
public string B { get; set; }
}
我是这样调用这个端点的
var url = ...;
var client = new HttpClient();
var data = new
{
a = "Foo",
b = "Bar"
};
var result = await client.PostAsJsonAsync(url, data);
但是PostData方法中的数据参数总是为空。知道我做错了什么吗?
如果您的内容类型是 application/json
,请使用 [FromBody]
而不是 [FromForm]
。