前提・実現したいこと
QUOINEXという仮想通貨取引所で注文できるようにしたいです。
以下のサイトのサンプルコードを参考にしたのですが、
POSTのパラメータをどのように組み込めばいいのかわからず実現できません。
参考サイト
https://developers.quoine.com/#create-an-order
発生している問題・エラーメッセージ
以下の関数を実行しても、注文が登録されません。
該当のソースコード
Ruby
1require 'net/http' 2require 'uri' 3require 'json' 4require './key' 5require 'openssl' 6require 'time' 7require 'jwt' 8 9def qx_order 10 uri = URI.parse("https://api.quoine.com") 11 http = Net::HTTP.new(uri.host, uri.port) 12 http.use_ssl = true 13 14 token_id = QX_API_KEY(実際には入力されています) 15 user_secret = QX_API_SECRET(実際には入力されています) 16 path = '/orders/' 17 18 auth_payload = { 19 path: path, 20 nonce: DateTime.now.strftime('%Q'), 21 token_id: token_id 22 } 23 24 body = { 25 "order": { 26 "order_type": "limit", 27 "product_id": 29, 28 "side": "sell", 29 "quantity": "0.01", 30 "price": "200000" 31 } 32 } 33 34 signature = JWT.encode(auth_payload, user_secret, 'HS256') 35 36 request = Net::HTTP::Get.new(path) 37 request.add_field('X-Quoine-API-Version', '2') 38 request.add_field('X-Quoine-Auth', signature) 39 request.add_field('Content-Type', 'application/json') 40 request.body = body 41 42 puts response = http.request(request) 43end
response には、なにが帰ってきているのでしょうか?
現状ではレスポンスが返って来ず以下のエラーが出力されます
/usr/local/rvm/rubies/ruby-2.4.1/lib/ruby/2.4.0/net/http/generic_request.rb:183:in `send_request_with_body': undefined method `bytesize' for #<Hash:0x000000025f0b48> (NoMethodError)
from /usr/local/rvm/rubies/ruby-2.4.1/lib/ruby/2.4.0/net/http/generic_request.rb:121:in `exec' from /usr/local/rvm/rubies/ruby-2.4.1/lib/ruby/2.4.0/net/http.rb:1444:in `block in transport_request'
from /usr/local/rvm/rubies/ruby-2.4.1/lib/ruby/2.4.0/net/http.rb:1443:in `catch'
from /usr/local/rvm/rubies/ruby-2.4.1/lib/ruby/2.4.0/net/http.rb:1443:in `transport_request' from /usr/local/rvm/rubies/ruby-2.4.1/lib/ruby/2.4.0/net/http.rb:1416:in `request'
from /usr/local/rvm/rubies/ruby-2.4.1/lib/ruby/2.4.0/net/http.rb:1409:in `block in request' from /usr/local/rvm/rubies/ruby-2.4.1/lib/ruby/2.4.0/net/http.rb:877:in `start'
from /usr/local/rvm/rubies/ruby-2.4.1/lib/ruby/2.4.0/net/http.rb:1407:in `request'
from /home/ec2-user/environment/method.rb:129:in `qx_order' from /home/ec2-user/environment/bitcoin.rb:77:in `<main>'