我目前在让两个请求一起工作时遇到问题。
当我使用[FromUri]
时,我无法在fiddler中过滤POST请求,但我可以在任何浏览器中调用GET请求。
但是当我使用[FromBody]
时,我无法请求GET方法,但我能够在fiddler中过滤POST请求。
(例如GET请求 - > localhost / api / test?name = bbcm)
(例如POST请求:
[request header]
- >用户代理:Fiddler
Content-Type:application / json;
主持人:localhost:45361
内容长度:16
授权:基本##### =
[request Body]
- > { “名称”: “bbcm”})
[Authorize]
[HttpGet]
[HttpPost]
public HttpResponseMessage post([FromUri] Query query)
{
// do something
var data = Data.ToList();
if (!data.Any())
{
var message = string.Format("No data found");
return Request.CreateErrorResponse(HttpStatusCode.NotFound, message);
}
return Request.CreateResponse(HttpStatusCode.OK, data);
}
}
我是否错误地调用了请求,或者我是否需要更改其代码才能使其正常工作。 请指教。非常感谢
答案 0 :(得分:1)
只需创建一个POST方法和一个GET方法以及从这两个方法调用的私有方法。这允许为所需方法获取输入参数correctyl。
如果确实需要,您仍然可以通过Request对象访问POST方法上下文中的GET参数。