2

データのパブリックな性質を考えると、これは簡単なはずですが、何らかの理由で、Ruby スクリプトが要求を行うときにタイムアウトになります。

URL は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: 実行期限切れの例外 (毎回) を返します。私はおそらく本当に明白な何かを見逃しています。誰でも助けることができますか?

ありがとう

4

1 に答える 1

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を取得しました。

于 2013-01-05T17:01:52.803 に答える