如何从rails控制器发送到外部站点表单,同时重定向到此外部站点?

时间:2013-06-11 07:22:47

标签: ruby-on-rails

我是mysite.com(rails app),而且没有我的网站other.site.com

在other.site.com上有一个表格,我想把它放到一些数据上。数据不敏感(不是登录/传递/ ...)但它不能通过GET工作。 所以我需要在我的控制器中收集数据并将用户重定向到另一个填写此表单的other.site.com上的表单。

我不需要提交此表单,我只需填写表格,然后将其留给用户提交表格。

2 个答案:

答案 0 :(得分:1)

使用form_tag帮助:

<%= form_tag 'url_where_you_want_to_POST' %>
  ... your form controls
<% end %>

有关此助手的详细信息,请参阅rails api reference

答案 1 :(得分:0)

您可以使用JSON发送数据:

网站1:

控制器内部

def action1
   #say you want send a @data

   respond_to do |format|
   format.json { render :json => @data }
   end
end

网站2:

现在获取此数据并生成表单

def action2
   @data_from_site1 = Net::HTTP.get(URI.parse("http://example.com/action1.json")) #or you can use html format
   @parse_data = JSON.parse @data_from_site1

# now use this @parse_data inside the View of this action
end

我希望你在寻找这个。