【发布时间】:2015-08-02 14:01:32
【问题描述】:
背景
我正在构建一个简单的 ReactJS 应用程序作为概念证明; Flux 架构等等。
我有一个使用 Sinatra 和 Mongoid 构建的 Ruby 和 MongoDB 数据层 API。
使用 ReactJS、JSX 和 Fluxxor 静态服务的前端。
我目前使用运行以下函数的点击处理程序获取应用程序状态:
function(callback){
var the_url = (this.state.isSelected) ? '/disable' : '/enable' ;
$.ajax({
url: the_url,
dataType: 'json',
cache: false,
success: function(data) {
callback(data);
}.bind(this),
error: function(xhr, status, err) {
console.error(the_url, status, err.toString());
}.bind(this)
});
}
这是一个简单的 AJAX 调用。我知道我可以通过稍微重构并让一段类似于上述代码的代码定期运行来实现某种实时性;基本上是投票。
我已经阅读并被告知,“真正的反应方式” 是让后端在应用程序状态发生变化时通知前端,并且可靠地实现这一点的方法是使用 WebSockets。
底线
考虑到我所描述的堆栈,我应该使用哪些库来处理应用程序两端的这些套接字,以及最简单的可能实现是什么样的?
【问题讨论】:
-
您可以通过简单地使用 MeteorJS 来不断更新您的客户端。 jk,我很想知道人们想出了什么解决方案。
-
更改后端是一项繁重的工作,我可能会避免这样做
标签: javascript ruby websocket reactjs reactjs-flux