收藏
回答

小程序webview内嵌h5应用时,为什么会将HTTP/2降级到http/1.1?

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug webview 工具 8.0.4 2.25.4

这是开发者工具里小蜘蛛的调试工具截图(http/1.1)

这是h5应用在浏览器里的截图(http/2)

最后一次编辑于  2023-08-12
回答关注问题邀请回答
收藏

2 个回答

  • 夏末
    夏末
    2023-08-10

    在webview里,除了html加载是h2,其他资源加载都是h1。这是webview对protocol进行了限制了吗

    2023-08-10
    有用
    回复
  • CRMEB
    CRMEB
    2023-08-10

    HTTP/2 是基于 HTTPS 协议的,而 HTTP/1.1 可以使用 HTTP 或 HTTPS。如果 WebView 内嵌的 H5 应用的资源使用的是 HTTP 而非 HTTPS,那么客户端(小程序)可能会选择 HTTP/1.1 来加载资源以保持一致性。


    2023-08-10
    有用
    回复 3
    • 夏末
      夏末
      2023-08-10
      嗯嗯,是的,Http和https确实要保持一致。
      但我这边目前的应用都是https的,所以我才好奇为啥webview会将h2降级为h1。
      2023-08-10
      回复
    • CRMEB
      CRMEB
      2023-08-10回复夏末
      某些网络安全策略或防火墙可能会对 HTTP/2 连接进行限制,从而导致客户端(小程序)无法建立 HTTP/2 连接,而只能使用 HTTP/1.1。
      2023-08-10
      回复
    • 夏末
      夏末
      2023-08-10
      您的意思是webview并不会对协议的版本进行限制,而是h5这边网关或者运维那边对使用环境加了限制?
      2023-08-10
      回复
登录 后发表内容