【发布时间】:2016-08-03 01:06:20
【问题描述】:
在 express.js 项目中,我尝试将数据从 nodeJS 服务器发送到客户端。
到达页面后,终端(我从中启动服务器)表明用户已通过套接字连接。然而,在运行包含套接字发射函数的函数时,什么也没有发生。
只有在重新加载网页时,发出的数据才会出现在 html 和终端控制台日志中。
以下是在 app.js 中的回调函数中触发套接字的代码
foo(function(fooCallback) {
console.log('Callback triggered');
io.on('connection', function(socket) {
console.log('about to send data via socket');
io.sockets.emit('person', { 'name': 'Jack Smith' });
});
});
global.js -(在 jquery 和 socket 脚本之后加载的客户端 js)
var socket = io.connect();
socket.on('person', function(socket){
console.log('client recieved something from socket');
var personName = socket.name;
$('#person').html(personName);
});
为什么只有在重新加载网页时才会发出数据,而不是自动发出?
【问题讨论】:
标签: javascript node.js express socket.io page-refresh