我需要知道服务器是否支持 HTTP 1.0。我通过 TCP 套接字发送此消息:
GET / HTTP/1.0
Host: www.example.com
问题是有时我会收到 HTTP 1.0 响应,有时会收到 HTTP 1.1 响应。我应该如何解释这些回应?
谢谢!
我需要知道服务器是否支持 HTTP 1.0。
当您发送请求时GET / HTTP/1.0
,您是在告诉服务器您作为客户端支持的 HTTP 版本是 1.0。
如果服务器是为 HTTP 1.0 设计的,或者是为 HTTP 1.1 设计的,具有向后兼容 1.0 的能力,那么服务器应该向 1.0 请求发送 1.0 响应,而不是 1.1 响应,因为客户端可能不支持该响应。
在 HTTP 协议中,客户端应该在对服务器是什么或做什么有任何想法之前发送带有请求的版本。
这意味着您的反复试验方法可能是唯一的判断方法。
在实践中,HTTP/1.0 在绝大多数情况下都没有真正使用,而使用 HTTP/1.1 几乎总是合适的。