Mat*_*ias 5 .net c# self-hosting http-headers owin
我有一个应用程序自托管OWIN应用程序,我想从所有响应中删除Server标头("Microsoft-HTTPAPI/2.0").在Google上搜索时,它看起来非常简单,例如MSDN上的这篇博文显示了一个看起来非常简单的解决方案.我按照说明操作:
结果非常令人失望,没有任何改变,我仍然得到Server头.令我感到困惑的是,所有解决方案都完全相同,对他们来说似乎有效.还有什么需要做的才能从自托管的OWIN应用程序中删除Server标头吗?
更新 我尝试自己添加一个服务器头,它实际上工作,但它仍然添加了Microsoft-HTTPAPI/2.0.
将此代码添加为DelegatingHandler:
HttpResponseMessage response = await base.SendAsync(request, cancellationToken);
response.Headers.Server.Add(new ProductInfoHeaderValue("Foo", "1.0"));
Run Code Online (Sandbox Code Playgroud)
生成此服务器标头:服务器:Foo/1.0 Microsoft-HTTPAPI/2.0
小智 0
这段代码对我有用:
public void Configuration(IAppBuilder appBuilder)
{
appBuilder.Use(async (context, next) =>
{
context.Response.OnSendingHeaders(state =>
{
var response = (IOwinResponse)state;
context.Response.Headers.Remove("Server");
context.Response.Headers.Add("Server", new[] { "" });
}, context.Response);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
652 次 |
| 最近记录: |