gpt4 book ai didi

http - 如果 GET 请求中未指定 http 版本,为什么服务器不等待 http header ?

转载 作者:可可西里 更新时间:2023-11-01 17:05:39 26 4
gpt4 key购买 nike

如果我在没有指定 http 版本的情况下通过 netcat 发出 GET 请求 - GET/,我会收到服务器的响应,而无需等待我先发送任何 header 和空行。但如果版本存在 - GET/HTTP/0.1,它会正常运行,即使它是 0.1。我在 google.comapache.orgmicrosoft.com 上对其进行了测试。它是由协议(protocol)定义的吗?

最佳答案

这种请求形式(GET/ 没有版本号)被 HTTP 协议(protocol)的早期版本 HTTP/0.9 使用,它根本不支持 header 。参见 The Original HTTP as defined in 1991 .

后来的 HTTP 1.0 ( RFC 1945 ) 和 HTTP 1.1 ( RFC 2616 ) 规范要求 HTTP 1.0+ 实现识别 HTTP 0.9 请求和响应( RFC 7230 用于 HTTP 1.1 后来放弃了该要求)。

RFC 1945 规定:

The version of an HTTP message is indicated by an HTTP-Version field in the first line of the message. If the protocol version is not specified, the recipient must assume that the message is in the simple HTTP/0.9 format.

关于http - 如果 GET 请求中未指定 http 版本,为什么服务器不等待 http header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45507576/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com