去http pkg提供一个 Hijacker接口,任何人都可以告诉我什么时候应该使用它. 我检查注释,在Hijack调用允许调用者接管连接后,HTTP服务器库将不会对连接执行任何其他操作. 我理解它,因为它用
我检查注释,在Hijack调用允许调用者接管连接后,HTTP服务器库将不会对连接执行任何其他操作.
我理解它,因为它用于在一个端口内支持http请求和公共tcp交互.这样对吗?它有任何其他好处.
这意味着您接管了TCP连接的控制权.TCP是通用传输协议,而HTTP是TCP之上的应用程序协议. OSI seven layer model将TCP描述为第4层,HTTP是第7层.
如果您需要实现不同的应用程序协议,这是一个用于劫持的用例.
或者,如果您需要使用HTTP专门做一些事情,比如防止保持活动连接,这是另一个用例.
另一个Web应用程序协议的示例是Google的SPDY.这也是您可能劫持现有HTTP连接而不是直接创建TCP连接的一个很好的理由.对于SPDY,浏览器首先会发出包含“accept”标头的HTTP请求,表明它也能够理解SPDY.所以现在你可以劫持连接并实现SPDY而不是HTTP.