如何使用node.js + Ruby on Rails实现实时前端更新?

使用node.js在rails上实现实时更新的最佳方法是什么? 听到真实的例子或者您对替代解决scheme的想法,这将是非常好的。

我使用节点与Rails应用聊天。

我这样做的方式是设置一个代理我的Rails应用程序和我的节点应用程序的nginx前端。

这可以让您绕过相同的来源策略并进行交stream沟通。

这是我的nginx.conf的一个片段

location /chat_service { rewrite /chat_service/(.+) /$1 break; proxy_pass http://localhost:9000/; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; } 

这意味着我可以从我的Rails应用程序呈现html页面,并与节点应用程序进行通信,而无需使用像JSONP这样的恶意黑客。

一个完整的例子是超出了这个答案的范围,但在前面的一个好代理,你可以让他们一起愉快地工作。

做到这一点的方式将是像jQuery的JavaScript框架。 一旦rails呈现视图并将html传递给客户端浏览器,那么javascript可以接pipe来处理来自node.js的更新和请求信息,因为节点可以处理数千个并发连接。

您可以使用此方法进行简单的ajax调用,或者形成更复杂的彗星推送更新。

恐怕不是那么简单

因为在这种情况下我们得到了相同的原始策略 ,页面(由rails呈现)和更新服务器(node)必须位于同一个服务器和端口上

我仍然不知道如何做到这一点。