是否有从Ruby on Rails网络服务器运行python脚本的传统方法?
我有一个Ruby on Rails站点,目前已部署到Heroku(我可以部署到AWS或任何可能的地方)。
我希望人们上传,并在某些页面请求上执行任意python脚本(我们会检查安全性)。 python脚本应该运行相对较短(几秒钟顶部),主要是解析或处理数据。理想情况下,我们会让用户以任何语言上传脚本,但python是目前最重要的。
答案 0 :(得分:1)
有几种方法可以做到这一点。最明显的一个是编写另一个Web服务,这个服务在Python中,但这并不优雅。另一种解决方案:
安装rubypython
gem。
然后你可以做以下事情:
require 'rubypython'
RubyPython.start
my_python_module = RubyPython.import('my.python.module')
value = my_python_module.my_python_function().rubify
RubyPython.stop
您可以在rubypython
documentation pages看到更多信息。
第三个选项是通过IO.popen
简单地将Python作为任何可执行文件执行并执行。