进入Rails - 接收带有参数的请求并重定向它们

Luc*_*ord 2 parameters model-view-controller get ruby-on-rails ruby-on-rails-3

我如何 - 在Rails中 - 从一个网站(url)接收get请求,然后保存参数,并生成另一个网站的新url,其他参数(从db计算),并重定向到它?

我对中间的步骤没有问题(例如保存到db,接收参数).主要问题是如何收到get请求,并在Rails中发送get请求.

我根据以下问题看到:如何使用Ruby on Rails发出HTTP请求?我可以使用这Net::HTTP门课.然而,似乎他们专注于从另一个网站请求一些数据,而在这里我们从一些网站接收点击并想要重定向到另一个网站.

我的问题是:1.我如何保存这个人来自的变量(我需要一个参数)?2.如何在步骤结束时将用户重定向到新URL(保存,解析新URL等)?3.我在哪里执行这两项主要行动?在控制器?这是我的直觉,然而,视图是否持有相关网址?人们所指的相关索引网址在哪里?

Gal*_*len 5

也许我不太了解这个问题,但是,假设你的static_pages #index正在接收get请求:

在您的StaticPagesController中:

def index
  incoming_url = request.referer # this catch the incoming url, including its params
  incoming_url_params = URI(incoming_url).query # this returns an string with the incoming url params
  new_url = do_something_with_the_url_and_its_params_internally(incoming_url, incoming_url_params)
  redirect_to new_url
end
Run Code Online (Sandbox Code Playgroud)

因此,作为一个例子某人来自哪里http://www.wikipedia.org?lang=es,这将是incoming_urlincoming_url_params是"lang = es编辑"

希望有所帮助