发布和获取请求方法问题

时间:2014-06-23 13:55:16

标签: c# post asp.net-web-api get

我目前在让两个请求一起工作时遇到问题。

当我使用[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);
    }

}

我是否错误地调用了请求,或者我是否需要更改其代码才能使其正常工作。 请指教。非常感谢

1 个答案:

答案 0 :(得分:1)

只需创建一个POST方法和一个GET方法以及从这两个方法调用的私有方法。这允许为所需方法获取输入参数correctyl。

如果确实需要,您仍然可以通过Request对象访问POST方法上下文中的GET参数。

相关问题