未捕获的TypeError:无法调用null的方法'onClose'

时间:2013-03-08 14:00:18

标签: node.js iis socket.io chat

我在node.js聊天应用程序上工作,我在IIS上的IIS上托管了node.js. 我的目的是将asp.js中的node.js包含在Jon Galloway中,以便在asp.net Web应用程序中执行聊天(文本,音频,视频)。

我的安装细节:
iisnode.js - iisnode-full-iis7-v0.2.3-x86
node.js - node-v0.8.19-x86
express.js版本 - 3.1.0
socket.io版本 - 0.9.13
在带有IIS 8.0快递的Windows 7 32位系统上

我已在IIS上成功托管了node.js,并运行了样本

但是当我开始coading socket.io时,我卡住了..

当我开始使用客户端浏览器连接到服务器时,我在客户端浏览器上收到错误说明 未捕获的TypeError:无法调用null的socket.io.js方法'onClose':1771

在我的服务器应用程序中使用socket.io配置作为

io.configure(function () {
    io.set('transports', [    
           'xhr-polling'
         , 'jsonp-polling'
      ]);
        io.set("polling duration", 10); 
        if (process.env.IISNODE_VERSION) {
            io.set('resource', 'node/socket.io'); 
        }
    });

这个问题是否与iam使用的版本有关(express和socket.io node.js)或者在我的coading中,任何关于这个问题的想法都可以帮助我。

谢谢。

1 个答案:

答案 0 :(得分:7)

我认为这是因为您没有在客户端socket.io配置中设置资源路径。

socket = io.connect('http://myurl/node/socket.io', { resource : 'node/socket.io' })