Event timeout của socket.io bên server nằm ở đâu?

Mình đã đọc cái này https://socket.io/docs/server-api/
Tài liệu ghi rõ: đặt pingTimeout để khi client không pong ngược lại, coi như client mất kết nối.

var io = require('socket.io')(server, {
   reconnection: false,
   pingTimeout: 5000,
   pingInterval: 10000,
});

Mình để 5 giây (5000), rồi vào chrome debugger, bấm pause, 5 giây sau không thấy tác dụng (event disconnect không hề được gọi).
Google thì được thêm cách (có vẻ dành cho phiên bản cũ):

var io = require('socket.io')(server, {
   reconnection: false,
   pingTimeout: 5000,
   pingInterval: 10000,
});
// thêm đống dưới này
io.set('heartbeat timeout', 5000);
io.set('heartbeat interval', 10000);

Cũng thế, không có tác dụng.
Ok vậy nếu mình làm đến đây là đúng rồi, vậy event timeout nằm ở đâu trên server?? (Bên client https://socket.io/docs/client-api/ có hẳn một event timeout).
Còn nếu mình làm sai thì sai chỗ nào.
Mong mọi người giúp với, mình quá mệt rồi.
(Tại sao tài liệu bên open source lúc nào cũng làm người ta điên đầu?)

1 Like

khi client không pong ngược lại nghĩa là gì

Tức là server thử ping cho client nhưng không có phản hồi.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?