【发布时间】:2021-01-19 08:54:17
【问题描述】:
我在节点项目中有以下客户端代码
const openSocket = require('socket.io-client');
const socket = openSocket('http://localhost:2345');
console.log(socket.connected,socket.id)
socket.on('connect', function () { console.log('connect') });
socket.on('event', function (data) { console.log('event') });
socket.on('error', function (error) { console.log('error') });
socket.on('disconnect', function () { console.log('disconnect') });
socket.on('connection', (socket) => { console.log('connection') })
socket.on('fdaTrigger', (data) => { console.log('fdaTrigger') })
在服务器端,我有 socket.io 在端口 2345 上运行
const io = require('socket.io')(server, {
perMessageDeflate: false,
pingInterval: 10000,
pingTimeout: 5000,
});
var debug = require('debug')('socket.io');
var assetCounter = -1;
io.on('connection', function (socket) {
assetCounter = -1;
debug('Started');
console.log('Got a connection', socket.connected, socket.id);
})
服务器上每隔几秒就会触发一次连接事件,但我的客户端拒绝连接。当我停止运行客户端代码时,连接停止,所以它正在连接但客户端没有连接。任何见解将不胜感激。
【问题讨论】:
-
我觉得这个问题令人困惑,“......它正在连接但客户端没有连接......”?你能澄清一下吗?
-
顺便说一句。如果您的客户端与服务器在同一个域中提供服务,则不必指定 url.. 所以您可以使用 const io = require('socket.io-client');常量套接字 = io(); ...先试试这个
-
@kerim092 连接事件未在客户端触发。但连接事件不断被触发,每隔几秒
-
更新:问题是由于版本差异。听“connect_error”确实给出了日志
标签: javascript node.js socket.io