【问题标题】:Is WebSocket compatible with HTTP/3WebSocket 是否与 HTTP/3 兼容
【发布时间】:2019-08-06 14:20:38
【问题描述】:

即将到来的 HTTP/3 标准不再基于 TCP,而是基于 QUIC 协议。 WebSocket 基于 TCP,作为 HTTP 更新启动。

WebSocket 连接是否以基于 QUIC 而不是 TCP 的 HTTP/3 更新启动?还是无法将 HTTP/3 连接更新为 WebSocket 连接?

【问题讨论】:

  • 当前的 WebSocket 协议需要 TCP,但没有什么能阻止实现在传输层包含对 QUIC 的支持。不过,也有人提议让 WebSocket 协议适应 QUIC/HTTP3。
  • 我认为一种新方法正在接管:替代 WebSockets 和 WebRTC,它可以通过 quic 可选地支持可靠流和不可靠数据报:wicg.github.io/web-transport 现在我认为你最好使用 SSE ( EventSource) 用于基于 QUIC 的服务器发送事件

标签: http websocket http3


【解决方案1】:

RFC6455 目前仅支持 HTTP/1.1 用于连接升级。

一旦与服务器建立连接(包括
通过代理或通过 TLS 加密的隧道进行连接),客户端
必须向服务器发送打开握手。握手包括 HTTP 升级请求,以及所需的列表和
可选的标题字段。此握手的要求如下
跟随。

  1. 握手必须是一个有效的 HTTP 请求,由 [RFC2616]。

  2. 请求的方法必须是 GET,并且 HTTP 版本必须 至少为 1.1。

但是,有人提议支持 HTTP/2 和 HTTP/3(正如 Remy Lebeau 在上面的评论中提到的那样)。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-10
  • 2013-06-02
  • 2016-10-26
  • 2013-09-18
  • 1970-01-01
  • 1970-01-01
  • 2017-06-07
相关资源
最近更新 更多