如何在发布请求时重定向到外部服务页面?

时间:2016-08-05 12:51:54

标签: ruby-on-rails ruby ruby-on-rails-4 redirect post

我正在向一些外部服务发布一些信息,在这些服务上它会处理post params,并且应该显示我自己的页面以及我发送的参数。

即应根据我方的要求将其重定向到他们的网站。

这就是我在做的事情: 我使用HTTParty将数据发布到他们的URL并将响应存储在响应对象中,并使用render:html呈现给响应。

我在响应对象中得到了一个html。

这是代码:

     example_url = 'https://www.example.com/service.aspx'
  post_params = build_params # builds params for post request
  response = HTTParty.post(cams_url_two,
                body: URI.encode_www_form(post_params),
                headers: { 'Content-Type' => 'application/x-www-form-urlencoded' },
                verify: false)
  @result[:url] = response.body

在控制器中我正在使用渲染

render html: result[:url].html_safe

然而,这里发生的是响应返回html,它在我自己的应用程序上呈现,即localhost,它也试图在我的应用程序中搜索其资产。

这里的预期是点击一个帖子请求,它应该重定向到他们的网站。

关于如何实现这一目标的任何建议或帮助?

谢谢!

1 个答案:

答案 0 :(得分:0)

我想你想要

redirect_to @result[:url].html_safe

如果您希望重定向用户,请使用redirect_to。如果要呈现页面,请使用render html:...