【问题标题】:Chat application issue while using long polling使用长轮询时的聊天应用程序问题
【发布时间】:2016-08-22 17:56:10
【问题描述】:

支持开发者。

我目前正在开发像 facebook 这样的聊天应用程序,但使用的是长轮询。每次我打开聊天窗口时,都会向服务器发送一个长轮询请求,如果请求超时或成功响应,则会重新启动。但是,如果我关闭特定朋友的窗口选项卡并再次打开窗口选项卡,则两个长轮询请求正在等待服务器上的一条新消息,如果有一条消息,则同时响应。因此它会为对方发送的每条消息返回 2 条消息,并显示 2 条消息。我该怎么做才能让每个朋友的聊天窗口不再有长时间的轮询请求?我可以绑定一个函数来用聊天窗口关闭按钮中断第一个长轮询请求吗?还有其他方法可以完成我的事情吗?

谢谢中国。

【问题讨论】:

  • 这并不能解决您的问题,但是将一些 id 绑定到消息会阻止显示相同的消息,因为您将检查具有该 id 的消息是否已经存在
  • 非常感谢。我会试试看。如果有人有其他想法。我将不胜感激。

标签: web-applications chat long-integer polling


【解决方案1】:

完美运行。使用这个...

if(!$("#"+result.chatid).length) { //do things }

...检查现有消息。

【讨论】:

    猜你喜欢
    • 2012-11-06
    • 1970-01-01
    • 2011-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-14
    • 2020-08-06
    • 2010-09-07
    相关资源
    最近更新 更多