gpt4 book ai didi

node.js - socket.emit 和 socket.on 在 node.js 中不起作用

转载 作者:搜寻专家 更新时间:2023-10-31 23:29:43 26 4
gpt4 key购买 nike

我尝试将我的 chrome 浏览器连接到 NodeJs 服务器。所有代码在其他机器上运行良好。但是当我在我的机器上运行它时,它既没有给出错误也没有给出成功。这是代码

服务器代码:

var server =  http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});

var io = require('socket.io').listen(server);
io.sockets.on('message', function (socket) {
socket.emit('news', { hello: 'world' });

});

这是客户端代码。

<script>
var socket = io.connect('http://localhost:3000/');
//console.log(socket);
socket.on("message",function(data){
console.log(data);
})
</script>

不对的地方请指正。客户端中的 console.log() 不起作用。我尝试使用断点在 chrome 调试器中检查它,但它永远不会到那一点。

最佳答案

您缺少一些代码:

io.sockets.on('connection', function (socket) {
socket.on('message', function (data) {
socket.emit('news', { hello: 'world' });
});

socket.on('another-message', function (data) {
socket.emit('not-news', { hello: 'world' });
});
});

取自socket IO网站。为此,您需要从客户端发送“消息”开始,内容如下:

<script>
var socket = io.connect('http://localhost:3000/');
socket.on('connect',function(){
socket.emit('message', 'Hello server');
});

socket.on('news', function(msg) {
alert('News from server: ' + msg.hello);
});
</script>

关于node.js - socket.emit 和 socket.on 在 node.js 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17663589/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com