使用HTML按钮运行Ruby脚本?

时间:2015-02-10 19:14:21

标签: html ruby

我有一个Ruby脚本,我在本地通过命令行运行。现在我想通过一个简单的HTML按钮在浏览器中运行该脚本。有没有办法制作一个简单的HTML页面并运行类似于JS onclick事件的脚本?或者我必须首先设置一个rails环境吗?

3 个答案:

答案 0 :(得分:1)

要运行Ruby脚本,您需要一个Ruby解释器。 JavaScript可以由执行HTML页面的浏览器本地运行,Ruby no。

因此,您无法直接在浏览器中运行Ruby代码。有几种可能的解决方案。

您可以在某处托管Ruby脚本,并让HTML页面引用它。如果脚本相当简单,您可以使用其中一个在沙箱中运行Ruby脚本的服务。

但是,如果它是一个Rails应用程序,没办法。你需要在某个地方托管它。

简短的回答,您需要一台带有Ruby解释器的服务器/计算机来执行您的脚本。它不能由客户端浏览器执行。

答案 1 :(得分:0)

这里有一些选择。根据您的使用情况,最可能的两个是:

  1. 通过Opal将您的Ruby脚本转换为JavaScript,以便它可以在浏览器中运行。
  2. 使用Sinatra设置一个简单的服务器并在某个服务器上运行它,然后通过AJAX调用它。

答案 2 :(得分:0)

您的用例有几种选择,但我会使用Sinatra。这是一个非常简单的例子。

your_file.rb

require 'sinatra'

get '/' do
  "<a href='/another-file'> Link to another file </a>"
end

get '/another-file' do
  "Today is #{Time.now}"
end

如果您没有安装sinatra gem,请尝试

gem install sinatra

完成后,您可以在您想要的端口上运行脚本(我使用5000)

ruby your_file.rb -p 5000

现在,您可以在http://localhost:5000浏览您的简单应用。请查看sinatra website以获取完整的文档。