go x/net/http2: 访问原始HTTP/2流的能力

nhaq1z21  于 2个月前  发布在  Go
关注(0)|答案(4)|浏览(24)

我对在Go中创建一个HTTP代理(注意:不是反向代理)感兴趣。我只对实现CONNECT方法感兴趣。其他方法对我来说无关紧要。https://github.com/elazarl/goproxy非常接近我想要做的事情,但我也对supporting CONNECT when client is connected to proxy using HTTP/2感兴趣。据我所知,根据RFC7540,通过HTTP/2的CONNECT应该可以通过劫持流并在其上进行TCP隧道来工作。

  • http2responseWriter没有实现http.Hijacker。一个想法是它实现了http.Hijacker,这将允许访问底层TCP连接而不是HTTP流。

...或者还有其他我可以采取的方法,而不必实现低级HTTP/2功能吗?

ztmd8pv5

ztmd8pv51#

@agnivade 或许我应该用不同的措辞。请将此视为一个功能请求,即在HTTP/2中访问原始流。

nbnkbykc

nbnkbykc3#

关于这个的任何更新吗?这对于构建适用于HTTP/2的代理非常有用!

jpfvwuh4

jpfvwuh44#

我也对基于单个http2流的隧道解决方案劫持http2流感兴趣。已经创建了一个分支,可以在handle方法https://github.com/becheran/net中劫持http2流。我想最好不要使用原始的http.Hijacker接口,而是使用一些特定的流接口,以免混淆。
这会不会成为http2库的一个功能?

相关问题