我的邮件目标是从连接到 HTTP 服务器的 TCP 套接字读取数据,并逐块解析 HTTP 响应(传输编码:分块) - 服务器在同一连接上每 30 秒发送一个块
我附上了我的代码。看起来 io.Copy 读取了第一个块,然后在返回之前等待下一个块,所以它阻止了我。
如何在块到达时读取它们,而无需等待下一个块?
func readHttpChunk(server net.conn) {
buf := bufio.NewReader(server)
for {
resp, err := http.ReadResponse(buf, nil)
b := new(bytes.Buffer)
io.Copy(b, resp.Body)
fmt.Printf("Got me a chunk!")
}
}
慕沐林林
相关分类