如何访问此JSON解析哈希中的元素?

时间:2017-02-20 20:29:18

标签: json ruby

我正在使用Github API并试图访问单个元素,但是在执行此操作时遇到了问题,主要的ruby文件;

require 'octokit'

Octokit.configure do |c|
  c.login = 'example_user'
  c.password = 'password'
end

user = Octokit.user 'example_user'

uri = URI.parse("https://api.github.com/repos/angular/angular/stargazers")

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

http.use_ssl = (uri.scheme == 'https')
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Get.new(uri.request_uri)

res = http.request(request)
response = JSON.parse(res.body)

我可以访问例如第一个哈希没问题;

puts response[0]

但是,如果我尝试访问密钥的值,我只需获得一个空的回报;

puts response[0][:url]

知道我做错了吗?

1 个答案:

答案 0 :(得分:2)

使用JSON.parse,您会获得字符串化键,因此(假设response[0]已获得"url"键):

response[0]['url']