使用Ruby获取URL参数

时间:2014-07-14 17:08:58

标签: html ruby

我目前正在使用脚本

 <?php $name = $_GET ["id"]; ?>

www.example.com?id=john之类的网址中提取参数,然后使用

 <?php echo $name ?> 

当我需要代码中的变量时。

我现在需要使用Ruby而不是PHP来完成此任务。 Ruby on Rails中是否有类似的方法?

1 个答案:

答案 0 :(得分:0)

Rails具备所需的所有功能,但它是一个陡峭的学习曲线,因此Sinatra可能会更好地满足您的需求。特别是,像Rails一样,Sinatra可以轻松获取URL中的参数。如果你想这样,请参阅Sinatra的"Routes" documentation

这是使用Ruby及其捆绑的URI类从URL中提取参数的代码:

require 'uri'
uri = URI.parse('http://www.example.com?id=john')
uri.query # => "id=john"
Hash[URI.decode_www_form(uri.query)] # => {"id"=>"john"}

您可以将最后一行的结果分配给变量,然后使用它通过其名称访问任何参数的值:

params = Hash[URI.decode_www_form(uri.query)]
params['id'] # => "john"