【问题标题】:loading socket.io-client.socket.io.js fails when using ssl使用 ssl 时加载 socket.io-client.socket.io.js 失败
【发布时间】:2021-03-29 17:15:50
【问题描述】:

我开发了一个 node js 应用程序,只要使用 http 就可以正常工作。现在我需要升级代码也能够工作 ssl 并且我在加载 socket.io-client/socket.io.js 文件时遇到问题。 (其余工作正常。我安装了证书,服务器运行良好)

Firefox 失败并显示以下消息:阻止加载混合活动内容“http://”url”/socket.io/?EIO=3&transport=polling&t=NX-uS5E”。这很奇怪,因为链接声明了一个 http 请求。

Chrome 失败并显示以下消息:socket.io.js:3511 Mixed Content: The page at 'https://"url"?'已通过 HTTPS 加载,但请求了不安全的 XMLHttpRequest 端点 'http://"url"/socket.io/?EIO=3&transport=polling&t=NX-s_OB'。此请求已被阻止;内容必须通过 HTTPS 提供。

似乎 socket.io-client 正在尝试使用 http 而不是 https 加载资源。那可能吗? 我该如何纠正?有什么想法吗?

我已经在网上搜索了两天,但没有任何迹象表明其他人有这个问题

【问题讨论】:

    标签: node.js ssl https socket.io-java-client


    【解决方案1】:

    好的,晚上放了它,好好休息后,我再次检查了我的整个代码,发现了错误!

    我有一个混淆的代码行,我使用的是 http 请求而不是 https 请求。我必须在服务器端和客户端都纠正这个问题。

    我还必须在每个调用中包含端口号,并通过添加选项“transsports: ['polling']”强制客户端的套接字使用轮询而不是 websockets

    【讨论】:

      猜你喜欢
      • 2012-07-24
      • 2016-07-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-21
      • 2020-11-18
      • 2020-07-16
      • 2014-03-19
      • 2014-01-21
      相关资源
      最近更新 更多