我是API的新增和后端的发展,并一直在尝试几个小时才能弄清楚如何做一些简单的东西,就像将当前的比特币市场价格称为我的Rails应用程序。

我尝试引用 http://blockchain.info/ticker 在我的型号中的以下代码

require 'rest-client'
require 'json'

base_url = "http://blockchain.info/ticker"
response = RestClient.get base_url
data = JSON.load response
cool = data[0]["CNY"]
@test = JSON.pretty_generate cool
.

然后把它放在我的视图中

<%= @test %>
.

我知道这是出现的,但我处于损失,想象我会看看有人可以提供良好的资源还是让我进入正确的方向。非常感谢

有帮助吗?

解决方案

Dude,它的所有工作都很好。

替换数据[0] [“CNY”]与数据[“CNY”] ,即所有。

要获得更多句柄,请在IRB中执行这些行1到1,

就像这样,

1.9.3p385 :001 > require 'rest-client'
 => true 
1.9.3p385 :002 > require 'json'
 => true 

1.9.3p385 :004 > base_url = "http://blockchain.info/ticker"
 => "http://blockchain.info/ticker" 

1.9.3p385 :005 > response = RestClient.get base_url

1.9.3p385 :006 > data = JSON.load response

1.9.3p385 :007 > cool = data["CNY"]
 => {"15m"=>5519.13613, "last"=>5519.13613, "buy"=>5578.16433, "sell"=>5853.54832, "24h"=>5616.47, "symbol"=>"¥"} 

1.9.3p385 :008 > @test = JSON.pretty_generate cool
 => "{\n  \"15m\": 5519.13613,\n  \"last\": 5519.13613,\n  \"buy\": 5578.16433,\n  \"sell\": 5853.54832,\n  \"24h\": 5616.47,\n  \"symbol\": \"¥\"\n}" 

1.9.3p385 :009 > p @test
"{\n  \"15m\": 5519.13613,\n  \"last\": 5519.13613,\n  \"buy\": 5578.16433,\n  \"sell\": 5853.54832,\n  \"24h\": 5616.47,\n  \"symbol\": \"¥\"\n}"
 => "{\n  \"15m\": 5519.13613,\n  \"last\": 5519.13613,\n  \"buy\": 5578.16433,\n  \"sell\": 5853.54832,\n  \"24h\": 5616.47,\n  \"symbol\": \"¥\"\n}"
.

其他提示

我会建议您使用 httparty ,它使发送请求更简单。 关于你的例子,你可以做

require 'httparty'
require 'json'

base_url = "http://blockchain.info/ticker"
response = HTTParty.get(base_url)
data = JSON.parse(response.body)
data.each_pair do |ticker, stats|
  pp "Ticker: #{ticker} - 15m: #{stats['15m']}"
end
.

显然,我是pp(打印)只是为了显示数据。如果您要做真实的实现,您实际上会在视图中呈现数据。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top