我们的方法在dev环境中工作正常,但在部署时,它接收的参数始终为null。我正在测试Postman& SoapUI,结果相同。
示例:
[HttpPost]
[Route("api/mycontroller/trytypedpostfrombody/")]
public HttpResponseMessage TryTypedPostFromBody([FromBody]MyClass req)
{
return Request.CreateResponse($"You have sent with typed POST from body: {(req != null ? JsonConvert.SerializeObject(req) : "<null>")}");
}
当然,邮递员发送Content-Type: application/json
并且请求是通过正文发送的MyClass
的json表示。
在开发环境(localhost)上它工作正常,但是当我们部署到客户端托管时,服务总是返回,好像agument是NULL
(即我只是将邮递员切换到不同的URL,它返回null而不是收到了什么)。请注意,方法会被调用,它只是不能在网络中“生存”的参数。如果我尝试使用[FromUri]
传递参数类似,它就可以正常工作。
我很欣赏有关要检查的内容的任何想法,因为我全都不在......(除了将所有方法从POST
切换到GET
/ facepalm /)
修改
我推断它不是关于POST或GET,它只是被切断的身体。因此,与此同时,我们必须更改所有帖子以接受内容[FromUri]
,直到我们解决此问题。此外,中间似乎有一个数据电源设备,但他们说他们有相同的响应,即使他们直接进入而不是通过DP暴露的URL(这很奇怪,我会发誓它是数据电源配置问题)