MtGox通过Ruby定价

时间:2013-01-05 15:30:33

标签: ruby-on-rails ruby

考虑到数据的公共性质,这应该很简单,但出于某种原因,我的Ruby脚本会在发出请求时超时。

网址为http://mtgox.com/api/1/BTCGBP/ticker - 在浏览器中正常运行,并返回预期的JSON。

require 'net/https'
require 'uri'
uri = URI.parse('https://mtgox.com/api/1/BTCGBP/ticker')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true if uri.scheme == 'https'
resp, response = http.post(uri.request_uri, nil)

然而,这会从同一个框中返回 Timeout :: Error:execution expired 异常(每次)。我可能错过了一些非常明显的东西;有人可以帮忙吗?

由于

1 个答案:

答案 0 :(得分:3)

我在我的环境中尝试了你的代码,一切都很好。你能写一些关于这个错误的更多内容,它在哪一行发生等等? 你确定使用POST动词(RESTful)吗?你想让我做什么 ?我修改了你的代码:

    require 'net/https'
    require 'uri'
    uri = URI.parse('https://mtgox.com/api/1/BTCGBP/ticker')
    http = Net::HTTP.new(uri.host, uri.port)
    http.use_ssl = true if uri.scheme == 'https'
    resp = http.get(uri.request_uri)
    puts resp.body

我使用GET动词,我得到了JSON。