我正在为管理员和客户(nodejs+socketio+express)进行实时聊天。在聊天期间,当客户等待管理员响应超过两分钟时,我需要向客户显示消息“请稍后再试”
例如客户端从此事件获取响应
socket.on('Admin Response',function(msg){
});
如何跟踪此事件在过去两分钟内没有触发?
最佳答案
执行此操作的简单方法如下:
var timeout=setTimeout(sendMessage,120000);
socket.on('Admin Response',function(msg){
clearTimeout(timeout);
var timeout=setTimeout(sendMessage,120000);
});
对于较大的应用程序,我会将上次发送时间(和其他信息)存储在定义连接的对象中。有一个常规流程来查找没有事件的连接,并进行适当的处理。
关于node.js - 如何检测最近两分钟未触发的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37922807/