我如何在NodeJS应用程序的服务器端评估Ruby

How can I evaluate Ruby on the server side of a NodeJS app?

本文关键字:服务器端 评估 Ruby 应用程序 NodeJS      更新时间:2023-09-26

我正在深入研究NodeJS,在Heroku上构建一个应用程序,以帮助我的学生学习几种不同编程语言的各个方面。目前,该应用程序可以使用VM模块的runInNewContext方法安全地评估Javascript。我想添加对Ruby或Python的支持。

是否有可能安全地评估用其他语言编写的代码,特别是Ruby或Python,在NodeJS应用程序的服务器端?

提前感谢您的智慧!

前几天我在玩nodejs虚拟机,它很酷…据我所知,还没有任何东西可以为Ruby做同样的事情。您可以使用node.js中的子进程函数通过命令行运行ruby: child_process.exec(command, [options], callback)。不确定这对你有多大用处,但以防万一,这里是:

var childProcess = require("child_process").exec;
childProcess('ruby -e "puts ''Hello World!''"', function (err, stdout, stderr) {
    console.log(stdout);
});

我还没有在heroku上尝试过,但它在本地工作,我看不出为什么它也不能在python上工作。我很想知道这是怎么回事!

您只需要在Heroku上运行多次构建,然后在child_process上运行。生成或执行到Ruby或Python代码。当然,如果可能的话,您将希望以异步方式执行此操作。