【问题标题】:Implementing long-polling ajax with Sinatra使用 Sinatra 实现长轮询 ajax
【发布时间】:2012-06-02 04:33:09
【问题描述】:

我对 Sinatra 和 Padrino 有丰富的经验。我使用 datamapper 进行数据库调用,所以在我了解到有一种称为彗星编程的编程模型之前,为了实现一个简单的聊天系统,我每时每刻都从用户的浏览器向服务器发送 Ajax 请求。

现在我看了一段时间 Facebook 的系统,只要我能看到,我的浏览器正在向服务器发送请求,服务器持有我的请求,当有新消息给我时,它会响应请求。之后,我的浏览器会尽快启动另一个请求,并且这个循环会永远持续下去。我想实现一个模仿这种行为的系统。

客户端不是什么大问题,我很擅长使用 Jquery 进行 Ajax,但我不知道如何让请求等到我的数据库中有插入?

【问题讨论】:

  • 您是否尝试过使用 socket.io 进行投票?

标签: ruby sinatra datamapper long-polling padrino


【解决方案1】:

模仿FB有无限的选择,在ruby中很常见http://faye.jcoglan.com

或者如果你不想关心服务器端,你应该检查http://pusher.com

只有少数几个星球可供选择。

【讨论】:

  • faye 看起来很有前途,我看不出我为什么要添加另一个像 pusher 这样的层
  • 是的,我同意,如果您不想关心服务器端代码,推送器很有用
猜你喜欢
  • 1970-01-01
  • 2011-09-16
  • 2013-02-17
  • 2014-08-16
  • 2012-10-06
  • 2014-01-08
  • 2016-03-10
  • 2012-02-24
  • 2012-04-01
相关资源
最近更新 更多