1 回答

TA贡献1155条经验 获得超0个赞
我相信,在 JS 部分,您应该在某处调用 sendMsg() 以发出消息。
更新
const io = require('socket.io-client');
const socket = io('http://localhost:8080');
socket.on('message', data => {
console.log('Got from server: ');
console.log(data);
});
function generateNumber() {
const n = Math.floor(Math.random() * 50);
return { number: n };
}
function sendMsg() {
const json = generateNumber();
console.log('Sending to server:');
console.log(json);
socket.emit('message', json);
}
function loop() {
const rand = Math.round(Math.random() * (3000 - 500)) + 500;
console.log(`Setting timeout ${rand}ms`);
setTimeout(() => {
sendMsg();
loop();
}, rand);
}
socket.on('connect', () => {
console.log('Connected to server');
loop();
});
我在两边都使用节点。服务器端只是发回每条收到的消息。日志如下所示:
Connected to server
Setting timeout 1685ms
Sending to server:
{ number: 21 }
Setting timeout 1428ms
Got from server:
{ number: 21 }
Sending to server:
{ number: 40 }
Setting timeout 2955ms
Got from server:
{ number: 40 }
添加回答
举报