我有一个使用WebApi的MVC 4应用程序。外部客户端正在POST它,我需要收集这些数据。我可以使用模型绑定来使用
public void Post([FromBody] Alert alert) { ... }
其中Alert是定义复杂类型的类。但是,我有一个案例,我想要阅读正文中的内容,即使我不知道结构是什么。那么我如何读取传入的POST请求的原始标题和正文。我试过这个:
public void Post(HttpContent content) { ... }
但是当POST到服务时,根本不会调用Post方法。
输入
由于
答案 0 :(得分:2)
尝试绑定HttpRequestMessage而不是HttpContent。这应该有效,并且可以让您访问请求标题和正文。
public void Post(HttpRequestMessage request) { ... }
您还可以访问控制器上的Request属性,该属性应正确设置:
public void Post() { var content = Request.Content; }