Delphi INTERNET\u选项\u启用\u HTTP\u协议/windows 10给出了奇怪的结果

Delphi INTERNET\u选项\u启用\u HTTP\u协议/windows 10给出了奇怪的结果,delphi,windows-10,wininet,Delphi,Windows 10,Wininet,我正在尝试实现对HTTP_协议_标志_HTTP2的支持 i、 e.如果Web服务器支持,我的爬虫程序也应该支持 if (vosWin__EG__Win10 in msGetOS_Version.Version_Set) then begin vHttpProtocolSupport := $00 // http 1.1 and older always on or $02 // http 2

我正在尝试实现对HTTP_协议_标志_HTTP2的支持

i、 e.如果Web服务器支持,我的爬虫程序也应该支持

      if (vosWin__EG__Win10 in msGetOS_Version.Version_Set) then
        begin
          vHttpProtocolSupport :=
             $00 // http 1.1 and older always on
          or $02 // http 2
          ;
          InternetSetOption(hHttpOpen_Request, INTERNET_OPTION_ENABLE_HTTP_PROTOCOL, Pointer(@vHttpProtocolSupport), SizeOf(vHttpProtocolSupport));
        end
      ;
然而,如果我使用他的标志——返回的GET内容流都是乱码——似乎没有使用我至少可以解码的任何编码。再次移除标志会使一切正常


关于此标志的行为,文档中是否缺少一些内容?

。听起来WinINet没有为您执行解压缩工作(无法验证,无法手动执行Windows 10)。在语义上与HTTP相似,但在技术上却大不相同。标题被压缩,数据被帧化,多路复用,蚀刻-我将尝试做一些更改并报告回来。理想情况下,我希望随着时间的推移使用WinInet支持http/2。谢谢你们两位,
HTTP\u协议\u标志\u HTTP2
在“Windows10,版本1507及更高版本”中受支持。@Remy,现在想想,应该有某种API稳定性。我的意思是,我希望WinINet能够为您解压头,或者如果您通过
HttpQueryInfo
查询会发生什么?至于数据,我希望API具有相同的稳定性,还是我错了?