将 Http/2 与 ASP.NET 自托管 webapi 一起使用

Posted

技术标签:

【中文标题】将 Http/2 与 ASP.NET 自托管 webapi 一起使用【英文标题】:Using Http/2 with ASP.NET self hosted webapi 【发布时间】:2016-05-29 00:14:13 【问题描述】:

是否可以使用OWIN Self-Host ASP.NET Web API 2 处理HTTP/2 请求?我想同时允许HTTP 1.1HTTP/2,但找不到很多相关信息。

有没有人用过这个并且知道怎么用?

谢谢大家!

【问题讨论】:

【参考方案1】:

HTTP/2 支持仅在 Windows 10 上的 .NET Framework 4.6(和 4.6.1)中提供,

https://blogs.msdn.microsoft.com/dotnet/2015/07/20/announcing-net-framework-4-6/

【讨论】:

.NET的版本对于自托管无所谓,但需要Win10。 @Tratcher 你现在是这样做的原因吗? HTTP/2 的实现在 IIS 和 HttpListener 所依赖的名为 Http.Sys 的本机 Windows 库中关闭。该功能是在 Win10 中添加的,它不是 .NET 功能。服务器不需要选择加入该功能,它应该可以正常工作。 System.Web 中有一个新的可选公共 API(推送承诺),但没有为 HttpListener 添加 API。 @Tratcher 您还应该声明 HTTP/2 标准仅在 2015 年获得批准,微软只能可靠地将支持添加到其最新的 Windows 版本中。 @JairoAndresVelascoRomero 目前没有微软发布的服务器版本支持 HTTP/2。即将推出的 Server 2016 将率先支持它。

以上是关于将 Http/2 与 ASP.NET 自托管 webapi 一起使用的主要内容,如果未能解决你的问题,请参考以下文章

自托管 asp.net mvc

具有相对路径的 Asp.net 自托管 WCF 服务 WSDL

如何让自托管 HTTPS asp.net 核心站点自动使用绑定到端口的证书

ASP.net 5 在 Live Windows Server 上自托管 - EACCES 权限被拒绝?

asp.net web api 自托管 / owin / katana

如何在 asp.net 自托管 API 中启用 CORS?