如何在RubyonRails中在服务器端运行Javascript
我打算用RubyonRails编写一个与比特币相关的Web应用程序。 现在有一些非常有用的库,比如Bitcoinjs或Bitcore,它们是用Javascript编写的,可以在Webbrowser的客户端运行,也可以在Node.js的服务器端运行。然而,由于我打算用RoR编写这个应用程序,我想知道如何利用服务器端的这些库。 是否有一种方法(即gem)允许在服务器上解释Javascript,或者我可以在RoR代码中启动Node.js实例,然后通过该实例解释这些Javascript库并执行其功能?如何在RubyonRails中在服务器端运行Javascript,javascript,ruby-on-rails,node.js,Javascript,Ruby On Rails,Node.js,我打算用RubyonRails编写一个与比特币相关的Web应用程序。 现在有一些非常有用的库,比如Bitcoinjs或Bitcore,它们是用Javascript编写的,可以在Webbrowser的客户端运行,也可以在Node.js的服务器端运行。然而,由于我打算用RoR编写这个应用程序,我想知道如何利用服务器端的这些库。 是否有一种方法(即gem)允许在服务器上解释Javascript,或者我可以在RoR代码中启动Node.js实例,然后通过该实例解释这些Javascript库并执行其功能?
非常感谢您的帮助。因为您非常有决心使用这些nodejs库,下面是我将如何做的。因为在错误的环境中运行代码是一个非常糟糕的主意,所以我会做这样的设置 前端,ERB模板=>RoR服务器=>nodeJs服务器
这种设置背后的想法是RoR更像是一个任务主控器,而nodeJs是工作者。你的RoR应用程序会找出需要发生什么,然后告诉nodeJs去做。然后Nodejs将响应RoR将向用户返回的结果
以下是一个示例:
前端有人要求你的应用程序将x比特币转移给其他人。然后,你的RubyonRails应用程序将执行任何需要的非比特币任务(例如:登录、给人发消息)。然后,您的RoR应用程序将向实际执行比特币任务的nodeJs服务器发送请求。
下面是如何实现此设置
我不推荐它,试着寻找本机库,而不是在它不适合的环境中运行本机库。这样做通常会导致糟糕的性能。好吧,但除了性能问题之外,是否可能以及如何做到这一点?听起来很合理,但似乎比我预期的要复杂。所以你是对的,也许我不打算使用这些库。(由于缺乏代表分数,无法投票支持你的答案)@user3866773没关系。如果你认为这个答案对你将来的问题有帮助,那就接受吧。