WebSocket没有连接到socket.io



我使用Node.js与套接字。IO实现websockets在我的一个页面。server.js (Node.js运行的东西)有以下代码:

var http = require("http").createServer(),
io = require("socket.io").listen(http);
http.listen(8080);
io.sockets.on("connection", function(socket) {
        socket.emit("message", {hello:"world"});
});

这是我要连接的代码:

var socket = new WebSocket("ws://92.60.122.235:8080/");
socket.onopen = function() {  
    alert("Socket has been opened!");  
}

当我加载页面时,什么也没有发生。我使用的是Chrome,我知道它支持websockets。错误控制台中没有错误,如果我观察socket。我没有看到任何用户在连接。

据我所知,这应该工作,谁能解释什么可能出错?

需要一个套接字。io客户端需要通过一些身份验证阶段。试试这个,它应该工作(客户端javascript是由套接字提供的)。IO本身,不用担心)。

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect('http://localhost');
  socket.on('message', function (data) {
    console.log(data);
    socket.emit('helloworld', { msg: 'why do you so love to say hello world?' });
  });
</script>
从http://socket.io/faq

如果实际的WebSocket不是,为什么不叫它WebSocket呢呈现和模仿它的API?

插座。IO甚至比WebSocket做得更多如果选择WebSocket作为传输,并且用户正在浏览你的网站有一个超现代的浏览器。某些特性心跳、超时和断开连接支持对实时至关重要应用程序,但不是由WebSocket API开箱即用的。

这类似于jQuery创建一个功能丰富的和简单的美元。与规范化XMLHttpRequest相反的ajax API。

您可以通过高级逻辑项目的博客文章"Websocket Server Demonstration"下载在Chrome, Firefox和IE(至少)中运行的网页源代码。

相关内容

  • 没有找到相关文章

最新更新