将HTTP / 1.0与.NET HttpListener类一起使用 - 或 - 禁用范围请求

时间:2011-11-27 06:02:04

标签: .net http http-headers range httplistener

我正在使用HttpListener class构建一个小型嵌入式Web服务器应用程序。当我向Chrome(和其他播放器)提供MP3(audio/mpeg)文档时,通常会触发少量请求,其中包含Range:个标头。我认为这是为了支持寻求媒体。

我不希望在我的申请中支持范围请求。是否可以将HttpListener置于为协议返回HTTP/1.0的模式中,以便用户代理不会为后续的范围请求而烦恼?

或者,我可以发送一个正确的回复,向客户表明我不会接受范围请求吗?

编辑:我刚刚尝试了Accept-Ranges: none标头(由the RFC定义),但浏览器仍然发出了带有范围标头的请求。也许还有另一种方式?

1 个答案:

答案 0 :(得分:2)

当服务器说它支持http 1.1时,似乎大多数客户端忽略Accept-Ranges: none

您可以在HttpListenerResponse中将http版本设置为1.0

response.ProtocolVersion = new Version("1.0");