[フレーム]
Last Updated: September 29, 2021
·
34.51K
· sandeepleo11

Get a particular key value from json in ruby

if you are getting a json response like this

res = {"status":0,"result":{"tuid":5851,"title":"300312577_abc.xls"}}

to extract status and 'tuid' from this

#!/usr/bin/env ruby

require 'rubygems'
require 'json'

res = {"status":0,"result":{"tuid":5851,"title":"300312577_abc.xls"}}

puts status = JSON.parse(res)['status']

puts tuid = JSON.parse(res)['result']['tuid']

for example if you are using net/http

uri = URI.parse("some_url")
req = Net::HTTP::Post.new(uri.request_uri)
req.set_form_data('field1' => 'data1', 'field2' => 'data2' ) 
res = Net::HTTP.start(uri.host, uri.port) do |http|
 http.request(req)
 endcase res
 when Net::HTTPSuccess, Net::HTTPRedirection
 puts "OK"
 puts res.body
 puts status = JSON.parse(res.body)['status']
 puts tuid = JSON.parse(res.body)['result']['tuid']
 else 
 puts res.message
 end

AltStyle によって変換されたページ (->オリジナル) /