Socket.IO命名空间不起作用

时间:2016-02-29 05:17:16

标签: node.js socket.io namespaces

我正在尝试创建一个socket.io节点聊天室应用程序
我的依赖是 socket.io@1.4.5
node@v5.7.0 在客户端,我添加了

window.onload = function(){

        + var socket = io.connect('http://localhost:4000/chat');
        var messagesElement = document.getElementById('messages');
        var lastMessageElement = null;

我添加了服务器端

- io.sockets.on('connection',function(socket){
   + io.of('/chat').on('connection',function(socket){

在这些更改之前,应用程序正常工作 当我尝试使用socket.io命名空间时
在服务器上分开不同的应用程序 并在客户端。
它不起作用,我在控制台上没有发现任何错误或错误。

My application's repository link

1 个答案:

答案 0 :(得分:1)

我刚发现客户端的socket变量下面有一个相同的变量

        <script>
window.onload = function(){
      + var socket = io.connect('http://localhost:4000/chat');
      var socket = io.connect('/chat');
            var messagesElement = document.getElementById('messages');
            var lastMessageElement = null;

@@ -36,7 +36,7 @@ window.onload = function(){
                lastMessageElement=newMessageElement;
            }
    here--> -var socket = io.connect('http://localhost:4000');
   +//var socket = io.connect('http://localhost:4000');
        socket.on('serverMessage',function(content){
            addMessage(content);
        });

我评论它,它现在有效。