【发布时间】:2020-08-03 04:39:29
【问题描述】:
我正在尝试设置 socket.io,这是我的 server.js 的一部分
const app = require('express')();
const http = require('http').Server(app);
const io = require('socket.io')(http, { path: '/websocket', origins:'*:*' });
io.on('connection', (socket) => {
socket.send('Hi');
socket.on('message', (message) => {
console.log(message);
socket.emit('hello', `New: ${message}`);
});
console.log('a user connected');
});
http.listen(3030, function(){
console.log('listening on *:3030');
});
还有我的简单客户:
var socket = io('https://*******.com', {
secure: true,
path: '/websocket'
});
const input = document.getElementById('text');
const button = document.getElementById('button');
const msg = document.getElementById('msg');
button.onclick = () => {
socket.emit('message', input.value);
socket.on('hello', (text) => {
const el = document.createElement('p');
el.innerHTML = text;
msg.appendChild(el);
})
}
如果我第三次点击,我会收到 3 条消息,依此类推。我做错了什么?我希望向服务器发送消息并接收修改后的消息。 我是网络套接字的新手。
任何帮助表示赞赏。
附: socket.io v2.0.1
【问题讨论】: