我遇到问题,我无法连接到Client的socket.emit。服务器在Node.js上 - 电子。连接事件正在运行,但它没有连接到signIn。在服务器上,它不能与socket
类一起使用,只能使用io
。你能帮帮我吗?
服务器:
const electron = require('electron');
const {app, BrowserWindow} = electron;
app.on('ready', () => {
let win = new BrowserWindow({width:800, height: 600})
win.loadURL(`file://${__dirname}/index.html`)
win.webContents.openDevTools()
})
var server = require('http').createServer();
var io = require('socket.io')(server);
io.on('connection', function(client){
console.log('Socket connection established');
io.on('signIn', function(message){
console.log(message);
});
});
server.listen(3000);
客户:
var socket = io.connect('http://localhost:3000');
socket.on('connect', function() {
console.log('Client connected');
socket.emit('signIn', 'coffee');
});
答案 0 :(得分:0)
您没有将监听器附加到client
事件的已连接套接字'signIn'
。而是将它附加到套接字服务器。
从
更改您的代码 io.on('signIn', () => {...})
到
client.on('signIn', () => {...})