如何读取 http2 伪字段

How to read http2 pseudofields

我有一个 http2 处理程序,它收到了 http2 请求。现在我需要访问请求中的 :authority pseudoheader 字段。怎么办? 我知道以下几个选项:

  1. 劫持http连接->但是又不想失去http层的能力,真是大材小用。我只需要那个伪 header 字段的值。
  2. 在不劫持它的情况下获取底层的 tcp conn 并从中读取帧。 -> 现在,该怎么做?一种方法是在 http.Server.ConnState 中获取 tcp conn(但我认为这不能保证。我经常发现连接已关闭,无论如何我觉得它非常麻烦)。

有没有办法单独提取伪场?

http.Request 中的主机在某种意义上这样做,它将 :authority 读入 r.Host 字段。但是其他领域就很难搞定了。