Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Node.js Socket.io聊天示例不起作用_Javascript_Html_Node.js_Socket.io - Fatal编程技术网

Javascript Node.js Socket.io聊天示例不起作用

Javascript Node.js Socket.io聊天示例不起作用,javascript,html,node.js,socket.io,Javascript,Html,Node.js,Socket.io,我只是从node.js开始,在我的主机上安装node,添加一些插件,然后从中下载socket.io示例聊天 当我运行它(node index.js)时,我会在控制台“监听*:3000”上收到警报,看起来一切都会正常工作,但当我在端口3000(coracko.com:3000)上访问我的站点时,聊天室是可见的,但消息不会发送,什么也不会发生 var-app=require('express')(); var http=require('http')。服务器(应用程序); var io=requ

我只是从node.js开始,在我的主机上安装node,添加一些插件,然后从中下载socket.io示例聊天

当我运行它(node index.js)时,我会在控制台“监听*:3000”上收到警报,看起来一切都会正常工作,但当我在端口3000(coracko.com:3000)上访问我的站点时,聊天室是可见的,但消息不会发送,什么也不会发生

var-app=require('express')();
var http=require('http')。服务器(应用程序);
var io=require('socket.io')(http);
var port=process.env.port | 3000;
app.get('/',函数(req,res){
res.sendFile(uu dirname+'/index.html');
});
io.on('连接',函数(套接字){
socket.on('chat message',函数(msg){
io.emit('chat message',msg);
});
});
侦听(端口,函数(){
log('侦听*:'+端口);
});

Socket.IO聊天
*{边距:0;填充:0;框大小:边框框;}
正文{字体:13px Helvetica,Arial;}
表单{background:#000;填充:3px;位置:固定;底部:0;宽度:100%;}
表单输入{边框:0;填充:10px;宽度:90%;右边距:5%;}
窗体按钮{宽度:9%;背景:rgb(130224255);边框:无;填充:10px;}
#消息{列表样式类型:无;边距:0;填充:0;}
#消息li{padding:5px 10px;}
#留言李:第n个孩子(奇数){背景:#eee;}
#消息{页边距底部:40px}
    发送 $(文档).ready(函数(){ $(函数(){ var socket=io(); $('form')。提交(函数(){ emit('chat message',$('#m').val()); $('m').val(''); 返回false; }); socket.on('chat message',函数(msg){ $(“#消息”).append($(“
  • ”).text(msg)); scrollTo(0,document.body.scrollHeight); }); }); });
  • 您的准确代码在我的计算机上对我有效。您必须调试该问题。我在所有事件处理程序中添加了
    console.log()
    语句,以查看发生了什么以及何时发生。您可以这样做,也可以在每个事件处理程序的调试器中放置断点。如果您的浏览器中显示了网页,则很明显服务器已启动,并且端口3000正在工作,因此此时,您必须查看表单提交处理程序是否被调用,以及服务器是否接收到传入的socket.io连接或消息,并在浏览器和服务器中查找控制台消息。您的主机可能不支持socket.io连接,或者在端口3000上不支持这些连接。也可以尝试端口80。还可以在托管文档中搜索webSocket/socket.io信息。是否可以使用inspect检查控制台中记录的错误?我想你没有包括在内。你的确切代码在我的电脑上对我有用。您必须调试该问题。我在所有事件处理程序中添加了
    console.log()
    语句,以查看发生了什么以及何时发生。您可以这样做,也可以在每个事件处理程序的调试器中放置断点。如果您的浏览器中显示了网页,则很明显服务器已启动,并且端口3000正在工作,因此此时,您必须查看表单提交处理程序是否被调用,以及服务器是否接收到传入的socket.io连接或消息,并在浏览器和服务器中查找控制台消息。您的主机可能不支持socket.io连接,或者在端口3000上不支持这些连接。也可以尝试端口80。还可以在托管文档中搜索webSocket/socket.io信息。是否可以使用inspect检查控制台中记录的错误?我推测你没有包括在内。