我需要从请求头传递一个参数到API控制器动作方法.我怎么能



我正在使用WEB API 2.0进行REST服务开发,我需要从请求头传递一个参数到API控制器操作方法。我怎么能呢?

默认情况下,API控制器从请求体中读取参数。我怎么能使它从请求头读取参数?

[HttpPost]
[Route("abc")]
public IHttpActionResult abcMethod(string s)
{
   //some code
}

我希望上面的abcMethod从请求头读取它的参数。

请建议。

这个怎么样?

IEnumerable<string> headerValues = request.Headers.GetValues("MyCustomID");
var id = headerValues.FirstOrDefault();

我还不熟悉Web API 2,但我通常这样做

string variale = this.Request.Headers.GetValues("HeaderParameter").First();

任何一个FirstOrDefault, Single, SingleOrDefault()或任何类似的都可以工作。

同样,Lambda也可以工作:

string variable = this.Request.Headers.First(header => header.Key == "Parameter").Value.FirstOrDefault();

最新更新