是否可以在FireFox/Safari中创建多个WebSocket
Is it possible to create multiple WebSockets in FireFox / Safari?
我想在客户端和服务器之间创建两个WebSocket连接。第一个连接用于向端口1337发送时间关键型应用程序的纯文本。第二个连接应该通过在端口443上使用tls来用于安全的数据传输。我使用以下代码来创建两个WebSocket:
var ip = document.URL.split("/")[2].split(":")[0];
var wss = new WebSocket("wss://" + ip + ":443"); //secure
var ws = new WebSocket("ws://" + ip + ":1337"); //realtime
好吧,在Chrome和Opera中运行它就像一种魅力。但当我在FF中测试它时,它似乎建立了第一个(安全)连接,当涉及到第二个连接时,它会中止所有代码执行。在Safari中,我收到一条错误消息,表示服务器已关闭连接,尽管它仍在运行。在这两种情况下,它都通过https下载html页面和css等,但javascript执行此时失败。
有人知道这里出了什么问题吗?如前所述,在Chrome和Opera中,一切都很好。我还没有测试IE。
所以我想我现在知道这个问题是什么了:
WebSockets不应在混合内容环境中使用;也就是说,您不应该从使用HTTPS加载的页面打开非安全的WebSocket连接,反之亦然。事实上,一些浏览器明确禁止这样做,包括Firefox 8及更高版本。
https://developer.mozilla.org/en-US/docs/WebSockets/Writing_WebSocket_client_applications#Security_considerations
因此,我似乎无法在一个HTML页面上打开两个具有不同安全级别的连接。
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 为effect Composer创建GodRays效果过程
- 从javascript创建一个列表
- onkeyup无法动态创建多个文本区域
- 如何使用javascript从主svg对象动态创建svg视图框
- 如何访问声音管理器2创建的声音对象
- 我已经创建了一个jquery转盘,并使用if条件来运行和停止转盘
- 是否可以在FireFox/Safari中创建多个WebSocket
- 如何在创建 websocket 时禁用标头中的 cookie
- 为 WebSocket [握手] 创建一个 PHP 套接字服务器
- 如何在Chrome App中创建一个简单的WebSocket服务器
- 正在为websocket应用程序创建登录名
- 如何在brython中创建websocket JSObject
- 创建websocket服务器以使用SuperWebSocket发送/接收复杂对象
- 使用javascript类型BLOB的WebWorker创建一个带有动态路径的WebSocket
- 不能通过express-ws中间件正确创建websocket服务器
- 如何创建一个nodejs websocket客户端
- 为什么websocket连接创建不通过http
- 如何使用socket.io从客户端创建多个websocket连接
- C#创建websocket-onmessage函数没有'不起作用