我们正在使用Backbone.js构建操作多个用户共享模型的客户端UI。设置Backbone.js从服务器获取数据并将更改同步到服务器是相当简单的。但是,更新已从服务器更改的模型的最佳做法是什么?
1)我们是否必须定期与服务器同步才能更新模型?如果是这样,Backbone.js中是否存在自动执行此操作的方式?
或者,
2)是否有一个Javascript库和RoR gem与Backbone.js配合使用,它使用整个反向HTTP模式让服务器更新客户端有关其他用户所做的更改?
感谢。
答案 0 :(得分:0)
我喜欢推流模式来做到这一点。
nginx服务器有一个可以使用它的模块:https://github.com/wandenberg/nginx-push-stream-module
但您可以使用websocket。
Facebook使用websocket并为其API更新发送命令,该模型具有要执行的更新。或者你可以在客户端为你的客户端和eval发送一个javascript命令(不是最好的方式,但是比正确方式更快)。
希望有助于解决您的问题。其他方法是使用setInterval或某些刷新事件进行检查。
答案 1 :(得分:0)
此外,PusherApp很受欢迎,可以从服务器向客户端发送更新。找到这个游戏,这是一个非常有趣的方式来可视化正在发生的事情 - 它使用Backbone.js。另外:socket.io有一些想法。