2012-01-14 6 views
0

これは基本的に私がしたい、フォームに与えられたパラメータで、私はサイトにGET/POSTリクエストをしたい、このサイトは特定のURLはhttp://site.com/user=XXX&size=XXXのようになり、JSONを返すようになります。このJSONのデータを解析して、フォームが送信されるときに私のレールアプリに保存したいと思います。Railsフォーム=> URL => JSON =>パラメータを保存

私はこの方法で完全に失われています、何かが非常に高く評価されるでしょう。

Railsのフォームデータ=> URLを構築=> GET/POSTリクエストを実行してください=>キャッチJSON =>パース=>

答えて

0

を保存し、私はあなたが得るために別のないあなたのサイトにリクエストをしたいと思います応答。だからcurb gem(rubyのカールラッパー)をインストールすることができます。それを使って別のサイトでリクエストを行い、Jsonのような標準のRoRツールを使ってjsonを解析してハッシュします。それはあなたが要求を行い、その後、自分でオブジェクトをルビーためにJSONを解析するためにネット:: HTTPを使用することができる非常に具体的な何かあれば、あなたのアプリケーション http://api.rubyonrails.org/classes/ActiveResource/Base.html

でactiveresourceを使用することができ、残りのAPIのための

0

http://www.rubyinside.com/nethttp-cheat-sheet-2940.htmlから、あなたは次の操作を行うことができます取得:で

あなたのファイルの先頭を追加します。その後、

require "net/http" 
require "uri" 
require 'json' 

をお使いのコントローラにまたはヘルパー:

#set the uri 
uri = URI.parse("http://my.site.com/uri") 

#set the post params and get the respons 
response = Net::HTTP.post_form(uri, {"first_param" => "my param", "second_param" => "another param"}) 

#get the json info 
data = JSON.parse(response.body) 

#set result to an ActiveRecord (maybe there is a better way to do this, I guess it depends on the response you get 
@something = Mymodel.new 
@something.name = data["name"] 
... 
@something.save 

希望します。

関連する問題