代码之家  ›  专栏  ›  技术社区  ›  Ayak973

HTTP版本不匹配-服务器响应代码

  •  0
  • Ayak973  · 技术社区  · 8 年前

    我正在尝试用C++编写一个HTTP1.0(目前只有1.0)服务器。

    我在此处阅读了HTTP 1.0规范: https://www.w3.org/Protocols/HTTP/1.0/spec.html . 第3节“ “,第3.1小节” HTTP版本

    根据 https://www.w3.org/DesignIssues/Protocolcomms.html ,当版本不匹配时,有两种可能性:

    • 版本(服务器)=版本(客户端)+1: 应降级到以前的版本 (不可能?我的服务器只能处理一个特定版本-我可以处理HTTP 0.9吗?)
    • 版本(服务器)>版本(客户端)+1: 向用户发出警报 (哪一个?4xx,5xx?)

    1 回复  |  直到 8 年前
        1
  •  2
  •   Community CDub    3 年前

    你似乎对最后提到的文件的解释不正确。在你的情况下,问题是 v(ME) < v(IT) (或 v(ME) + 1 = v(IT) ),该文档没有针对这种情况提供解决方案。

    然而 RFC 2616 ( HTTP/1.1协议

    我们希望HTTP/1.1客户端能够:

    • 识别HTTP/1.0和1.1响应的状态行格式;

    • 理解HTTP/0.9、1.0或1.1格式的任何有效响应。

    RFC 7230

    推荐文章