如何在golang中重用http2流?
大家好,最近我尝试了很多方法来重用流来发送http2数据但都失败了,而且我在http2中没有找到很多相关的解决方案,谁能给我一些提示或演示?
client := http.Client{
Transport: &http2.Transport{
DialTLS: func(network, addr string, cfg *tls.Config) (net.Conn, error) {
return net.DialTimeout(network, addr, time.Second)
},
AllowHTTP: true,
},
}
resp, err := client.Get(path)
我尝试使用 resp 作为客户端并写入此 resp 以将数据发送到服务器。这是正确的做法吗?
最佳答案
在 HTTP/2 中,流是短暂的,对应于请求/响应交换。实际上,响应结束会关闭流。如果底层连接使用 HTTP/2,则通过 client.Get
发出另一个请求将自动在连接上打开一个新流。
关于go - 无法在 golang 的 http2 中使用流式传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56112261/