代码之家  ›  专栏  ›  技术社区  ›  Vilx-

如何从安全网站访问不安全的websocket?

  •  4
  • Vilx-  · 技术社区  · 8 年前

    TL;DR:网站通过HTTPS提供服务,需要通过未加密的通道(ws://url)访问WebSockets服务器。浏览器不喜欢这样。

    加密websocket是可能的,但不方便-没有可信的机构可以签署证书,因此需要为每个客户端手动安装。我想把这作为最后的手段。

    该网站必须通过HTTPS提供服务,并且不能降级为HTTP。

    1 回复  |  直到 5 年前
        1
  •  5
  •   Myst    8 年前

    Vix,

    访问安全网站(HTTPS)的用户假设所有数据都是安全的。浏览器不允许在此上下文中进行非安全通信(除非存在安全故障)。这应该包括资产请求和在安全上下文中调用的任何其他请求(随着限制的加强,“混合内容”消息会慢慢淡出历史记录)。

    在某些浏览器上甚至是最糟糕的。例如,Safari将拒绝打开到未签名服务器的安全Websocket连接,即使该网页加载了对证书的临时批准。

    很抱歉,你的问题的简短答案是“不”。

    推荐文章