提问人:fcbflying 提问时间:12/25/2015 更新时间:6/8/2020 访问量:1142
套接字 IO 发出失败回调
socket io emit failed callback
问:
有没有办法知道套接字 io 发出失败和成功,类似于 ajax 回调方法:onSuccess、onError? 对于套接字 io emit 我只找到:
socket.emit('发布', {message:'测试消息'},函数(数据) { 警报(“”)})
只有当服务端发送确认响应时,才会调用此回调。但它不能适用于这种情况:
在向服务器发送消息的那一刻,存在网络不良或连接丢失,这意味着服务器没有收到此消息,因此不调用客户端回调函数。
我想要的是:
当我调用套接字io emit时,如果它失败了,我想重试3次。
答:
0赞
Ryan Soderberg
6/8/2020
#1
我知道这是一篇旧帖子,但以防万一有人仍然遇到麻烦。
var socket = new io.connect('http://localhost:3000', {
'reconnection': true,
'reconnectionDelay': 1000,
'reconnectionDelayMax' : 5000,
'reconnectionAttempts': 3
});
socket.on('connect_error', function() {
console.log('Connection failed');
});
socket.on('reconnect_failed', function() {
// fired only after the 3 attemps in this example fail
console.log('Reconnection failed');
});
更多信息在这里 -> https://socket.io/docs/client-api/#manager-reconnectionAttempts-value
评论
setTimeout