如何从Web API响应中删除标头?

Den*_*ail 11 c# .net-4.5 asp.net-web-api asp.net-web-api2

新的Web API 2.0项目,因此我们可以完全控制整个请求/响应管道.

我们如何从ASP.NET Web API响应发送的响应中删除"X-"标头?具体来说,目前并且总是会有变化,我们想要删除" X-AspNet-Version"," X-Powered-By"和" X-SourceFiles".

我们result.Headers.Remove("X-AspNet-Version");HttpResponseMessage从控制器返回之前尝试过.这不起作用,因为标题仍然出现在Fiddler.我也没有在HttpResponseMessage对象的任何地方找到任何标题.对我来说,这表明我可能需要深入挖掘管道,但我不知道从哪里开始或者这是否正确.

Joo*_*nen 1

正如 Slippery Pete 所指出的,这个问题已在如何删除 ASP.Net MVC 默认 HTTP 标头?

另一种解决方案是修改 EndRequest 信号处的请求,如下所示 http://tech.trailmax.info/2013/02/remove-server-http-header-from-asp-net-mvc-application/