4

我一直在尝试制作一个在浏览器中运行的 websocket 聊天室。我做了一些谷歌搜索,找到了一个提供示例 websocket 连接的网站(www.websocket.org/echo.html)。但是每当我尝试他们的“连接”按钮时,它会立即显示“已断开连接”,并且我无法发送消息(这只发生在 Chrome 上)。所以我在 Firefox 上尝试了它,它显示“错误:未定义”然后“断开连接”。两种浏览器都支持 websocket 技术。

所以我去了另一个网站(http://www.tutorialspoint.com/html5/html5_websocket.htm)并复制了示例代码,将其保存为“.html”并在chrome中运行。它无法连接到 websocket。相反,它说“断开连接”。

问题:为什么我无法连接到 websocket/为什么它一直断开连接?我的 Chrome 版本是 21.0.1180.60。

为了进一步参考,这是我到目前为止的代码(注意:这只是应该连接并说它已经连接,而不是实际聊天):

<!doctype html>
<head>
<title>Testing</title>
</head>
<body>
<script type="text/javascript">
    function confirm() {
    if ("WebSocket" in window) {
        alert("WebSocket is supported by your Browser!");
    }
    else {
        alert("Your Browser does not support WebSocket Technology. Please      update your Browser.");
    }
}
function sendmessage() {
    try {
        var ws = new WebSocket("ws://(ip of other user/")
        }
    catch(err)
        {
        alert("Error with creating the WebSocket")
        }
}
</script>
<a href="javascript:confirm()">Run Ip Connector</a>
</body>
</html> 

谢谢你的帮助。

4

1 回答 1

2

我刚刚在http://websocket.org/echo上测试了 Echo 演示,它使用 Chrome 21 运行良好。您的另一个示例似乎也运行良好。你可以在这里查看

由于您使用的是 Chrome 21,因此您可以使用 Chrome 开发工具查看 WebSocket 握手是否正在进行以及您是否看到任何消息。

您是否有可能坐在切断流量的路由器/防火墙后面?您可以在 websocket.org 上尝试 WSS 吗?(在位置字段中输入 wss://echo.websocket.org。)

于 2012-08-07T06:54:21.097 回答