使用node.js在rails上的ruby中实现实时更新的最佳方法是什么?很高兴听到真实的例子或你对替代解决方案的看法。
答案 0 :(得分:4)
我使用节点与rails应用聊天。
我这样做的方法是设置一个代理我的Rails应用程序和我的节点应用程序的nginx前端。
这使您可以绕过same origin policy并进行交叉沟通。
这是我的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这样讨厌的黑客。
完整的示例超出了本答案的范围,但如果前面有一个好的代理,您可以让他们一起愉快地工作。
答案 1 :(得分:-1)
这样做的方法是使用像jquery这样的javascript框架。一旦rails呈现视图并将html传递给客户端的浏览器,javascript就可以接管更新并从node.js请求信息,因为节点可以处理数千个并发连接。
您可以将此方法用于简单的ajax调用,或者形成更复杂的彗星推送更新。
答案 2 :(得分:-1)