0

.erbページがあり、ユーザーがログインすると、以下のコードのようなデータが含まれます。

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

したがって、必要なのは、URLを使用してこのデータをPHPページに渡すことです。ユーザーはすでにログインしているため、ユーザーの操作なしで(リンク、ボタンなしで)実行する必要があります。別のサイトへのリンクのようなコードは知っていますが、 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 に答える