【发布时间】:2022-01-14 23:02:19
【问题描述】:
我正在尝试将发布请求从 python 发送到 .net Core Api。但是我收到了
The JSON value could not be converted to NetflowInputViewModel.
我的视图模型是=
public class NetflowInputViewModel
{
public DateTime startDate { get; set; }
public DateTime endDate { get; set; }
public int ipv6 { get; set; }
}
我的控制器是 =
[HttpPost]
[Route("CdrDetails")]
public JsonResult CdrDetails([FromBody] NetflowInputViewModel model)
{
List<NetflowOutputViewModel> netFlow = netflowCdrService.GetDetails(model.startDate, model.endDate, model.ipv6);
if (netFlow == default)
{
return new JsonResult("No Records.");
}
else
return new JsonResult(netFlow);
}
我正在尝试从 python 发送参数,像这样 =
import json
from datetime import date, datetime
import requests
def json_serial(obj):
if isinstance(obj, (datetime, date)):
return obj.isoformat()
raise TypeError("Type %s not serializable" % type(obj))
url = "https://localhost:44388/api/NetflowCdr/CdrDetails"
start_date = datetime(2021, 11, 29, 15, 10, 0)
end_date = datetime(2021, 11, 29, 15, 20, 0)
myobj = {"startDate": start_date, "endDate": end_date, "ipv6": 0}
aa = json.dumps(myobj, indent=4, sort_keys=True, default=str)
x = requests.post(url, json=aa, verify=False, headers={
"Content-Type":"application/json", "Accept": "*/*"
})
print(x.text)
我该如何处理?我想我应该在 .net 核心方面改变一些东西,但我不知道该怎么做
【问题讨论】: