Sup Dev's。
我目前正在开发像facebook这样的聊天应用程序但是使用长轮询。每次打开聊天窗口时,都会向服务器发送长轮询请求,并在请求超时或成功响应时重新启动。但是,如果我关闭特定朋友的窗口选项卡并再次打开窗口选项卡,则两个长轮询请求正在等待服务器上的新消息,并且如果有,则响应两者。所以它会从对手发送的每条消息返回2条消息,并显示2条消息。我能做什么,那么每个朋友聊天窗口都不会有更长的轮询请求?我可以使用聊天窗口关闭按钮绑定一个函数来中断第一个长轮询请求吗?让我的事情完成的任何其他方法?
谢谢Chzn。
答案 0 :(得分:1)
完美无缺。用这个......
if(!$("#"+result.chatid).length) {
//do things
}
...检查现有消息。