JSONをYahoo APIから取得して、USDの変換率をSEKに変換しようとしています。しかし、JSONをハッシュに変換することはできません。JSONは1つの文字列として扱われるため、唯一のキーとして「クエリ」が表示されます。JSON文字列をnet/httpからHashに転送
JSON要求リターン:
{"query":{"count":1,"created":"2016-12-04T13:06:00Z","lang":"en-us","results":{"rate":{"id":"USDSEK","Name":"USD/SEK","Rate":"9.1900","Date":"12/2/2016","Time":"9:59pm","Ask":"9.2000","Bid":"9.1900"}}}}
私のコードは次の通りである:
require 'net/http'
require 'json'
url = 'https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.xchange%20where%20pair%20in%20(%22USDSEK%22)&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback='
uri = URI(url)
response = Net::HTTP.get(uri)
json_hash= JSON.parse(response)
puts json_hash["Rate"]
プット文戻っ 'nil' の
私はthis siteから例を以下試してみました、しかし、私は彼の静的に入力されている私のデータがもたらされている方法に基づいて同じ結果をもたらすことはありません。 *私は 'ostruct'を使用していません。単にjsonで試してみます。
ありがとうございました。
これは完全に機能しました、ありがとうございました! –