Javascript 远程服务器上的Node.js:未定义io
我正在构建一个应用程序,该应用程序链接到我家庭计算机上托管的node.js(78.233.79.103:8000) 服务器已正确安装(如果您转到我提供的地址,您将确保socket.io正常工作) 如果我在localhost中使用Javascript 远程服务器上的Node.js:未定义io,javascript,node.js,socket.io,Javascript,Node.js,Socket.io,我正在构建一个应用程序,该应用程序链接到我家庭计算机上托管的node.js(78.233.79.103:8000) 服务器已正确安装(如果您转到我提供的地址,您将确保socket.io正常工作) 如果我在localhost中使用 node server.js 一切都很好,应用程序工作正常 然后,当我在另一台pc或iPad上运行应用程序时(我用phoneGap包装了它,因此它只是一个包含在本机iOS应用程序中的web应用程序),尝试连接78.233.79.103:8000上的io时,我得到了控制
node server.js
一切都很好,应用程序工作正常
然后,当我在另一台pc或iPad上运行应用程序时(我用phoneGap包装了它,因此它只是一个包含在本机iOS应用程序中的web应用程序),尝试连接78.233.79.103:8000上的io时,我得到了控制台日志:
io is not defined
以下是我的源代码:
查找server.js
我知道我只调用io=require('socket.io')。侦听(端口);但现在我也应该创建类似的内容:
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(8000, '78.233.79.103');
这实际上是行不通的
有什么想法吗?可能是因为.listen()不返回此
试着把它们分开写
var io = require('socket.io');
io.listen(PORT);
是阿雷在,不是吗?io=require('socket.io')。侦听(端口);如果我尝试您的解决方案,那么这就给我:当我运行node server.js时,它会返回未定义的'cannotcall method'on'。对不起,您是说客户端吗?请检查您的客户端是否正确加载了socket.io/socket.io.js
<代码>io
应该在那里定义。客户端我有:(如果我想让它与本地节点服务器一起工作,我在中更改它)