我正忙于创建一个协作应用程序,其中 2 个用户可以同时编辑相同的数据,而无需完全刷新 HTML 页面(这是一个巨大的表格,如 Excel 工作表)。
Rails 4 中我必须将修改从用户 A 推送到用户 B 的最佳选项是什么?
最终目标应该是获得一个像谷歌电子表格中那样的自动更新表格! :-) 我没有找到这个问题的最近(>2012)答案...是否有一个 gem 或一个插件可以在服务器端启动自动进程?如何管理用户订阅更新?
最佳答案
您绝对应该使用 websocket-rails
gem,我个人将它用于我从头开始创建的辩论网站。
顾名思义,它使用Websockets。这项技术正在被越来越多的使用,目前已经兼容大部分浏览器,确实具有极好的兼容性。
websocket-rails
有很多文档,我在使用它进行高级使用时也遇到了一些麻烦,并且很高兴直接在他们的 irc channel 上联系他们的开发人员,他们非常好。
对于你的需求,我认为Websockets比Ajax方便得多,对于你的需求,Ajax需要询问服务器每隔 x 秒,如果有新内容需要刷新。这会耗尽您的服务器,但是当使用Websockets时,服务器将直接向您发送您需要的新数据。您可以找到更多信息 this choice on this SO answer.
它处理私有(private) channel ,如果交换的数据也不需要公开,websocket-rails
绝对是最佳选择!
您可以找到it's repository here.
关于ruby-on-rails - 最好的 Rails 4 ajax Push 引擎是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21025790/