2015-07-11 6 views

ответ

4

Шаг 1: Разбираем ответ GET:

require 'cgi' 

CGI::parse(MYSTRING) 

возвращений: {"param1"=>["value1"], "param2"=>["value2"], "param3"=>["value3"]}

Шаг 2. Convert to JSON:

require 'json' 

myObject.to_json 

С другой стороны, посмотрите на этот фрагмент:

https://gist.github.com/timsavery/1657351

require "rubygems" 
require "json" 
require "net/http" 
require "uri" 

uri = URI.parse("http://api.sejmometr.pl/posiedzenia/BZfWZ/projekty") 

http = Net::HTTP.new(uri.host, uri.port) 
request = Net::HTTP::Get.new(uri.request_uri) 

response = http.request(request) 

if response.code == "200" 
    result = JSON.parse(response.body) 

    result.each do |doc| 
    puts doc["id"] #reference properties like this 
    puts doC# this is the result in object form 
    puts "" 
    puts "" 
    end 
else 
    puts "ERROR!!!" 
end 
+1

меньшего размера кода для получения ответа 'результат = JSON.parse (Net :: HTTP.get (URI ("любой URL, который вы используете")))' если есть ошибка синтаксического анализа, то результат будет 'nil' и может пропустить .each с простым if –