0

我有一个 .erb 页面,当用户登录时,它包含如下代码中的数据。

<% if logged_in? -%>Welcome, <%= current_user.id %><% end -%>

所以我需要的是使用 URL 将这些数据传递给 PHP 页面,并且应该在没有用户交互(没有链接、按钮)的情况下完成,因为用户已经登录。我知道一些代码,比如 Link to another site this 但是我不知道如何在 ruby​​ on rails 中执行此操作,这也应该自动提交到不同服务器中的另一个 php 页面。

提前致谢。

4

1 回答 1

0

为了演示,我假设您正在发出 POST 请求。您可以在控制器操作方法中使用 ruby​​ 内置的 Net:HTTP 和 URI 库来发出这样的请求:

if logged_in?
  uri = URI.parse('http://remoteurl.com/script.php')
  http = Net::HTTP.new(uri.host, uri.port)
  params = { 'id' => current_user.id }
  request = Net::HTTP::Post.new(uri.request_uri)
  request.set_form_data(params)
  http.request(request)
end

您可以通过阅读Net:HTTP来定制您的特定需求。另外,我建议使用Resque 之类的东西将其设为异步任务。

于 2012-06-07T08:32:31.360 回答