使用 go 编写 tcp 服务却收到 http 请求
问题:
在编写一个简单的 go tcp 服务器时,可以接收 http 请求?代码如下:
tcpListener, err := net.ListenTCP("tcp", server.OuterServer.LocalAddress)
登录后复制
解答:
http 是基于 tcp 的协议。虽然 http 在 osi 模型中位于应用层(第 7 层),而 tcp 位于传输层(第 4 层),但 http 仍通过 tcp/ip 连接传输数据。
要进行 http 通信,客户端和服务器之间需要建立一个 tcp 连接。一旦建立连接,http 请求和响应就可以通过 tcp 连接的可靠传输机制进行传输。
因此,当编写一个 tcp 服务器时,实际上也可以接收 http 请求,因为两者都是通过 tcp/ip 连接传输的。
以上就是使用 Go 编写 TCP 服务器可以接收 HTTP 请求?的详细内容,更多请关注php中文网其它相关文章!