Vue-Socket.io客户端连接时不定时发生因transport close导致的disconnect,之后会自己自动connect,但并没有写reconnect方法。本地连接并不会出现,只有部署到环境上才会出现。
Vue.use(new VueSocketIO({
debug: true,
connection: Host + 'mmWS',
vuex: {
store,
actionPrefix: 'SOCKET_',
mutationPrefix: 'SOCKET_'
},
}));
sockets: {
connect() {
console.log('socket connected');
},
disconnect() {
console.log('socket disconnected');
},
status(data) {
this.setClientInfos(data.client_infos);
console.log('链接信息: ' + data.connection)
},
}
debug信息:
Vue-Socket.io: Broadcasting: #disconnect, Data: transport close
socket disconnected
Vue-Socket.io: Broadcasting: #connect, Data:
socket connected
版本信息:
socket.io:v2.0.3
vue-socket.io:v3.0.10
后端 Flask-SocketIO:v4.3.1
发生这种disconnect的时候,后端的disconnect方法也没有被触发
@socketio.on('connect', namespace='/mmWS')
def do_connect():
Logging().info('我建立了一个sockit链接')
@socketio.on('disconnect', namespace='/mmWS')
def do_disconnect():
Logging().info('我断开了一个sockit链接')
current_sid = request.sid
disconnect(sid=current_sid)
socketsClientMapper.delete(current_sid)
这是什么原因导致的呢,该怎么解决disconnect的问题呢,后端的方法能被触发吗