class OKEX::API::Private
Protected Instance Methods
digest()
click to toggle source
# File lib/okex/api/private.rb, line 43 def digest @digest ||= OpenSSL::Digest.new('sha256') end
headers(*args)
click to toggle source
# File lib/okex/api/private.rb, line 13 def headers(*args) { # 'OKEX-KEY' => key, # 'OKEX-SIGN' => signature(*args), # 'OKEX-TS' => ts.to_s, 'Content-Type' => 'application/json', 'Accepts' => 'application/json', } end
send_request(method, path, query)
click to toggle source
Calls superclass method
OKEX::API::Base#send_request
# File lib/okex/api/private.rb, line 9 def send_request(method, path, query) super(method, path, headers(method, path, query), query) end
signature(*args)
click to toggle source
# File lib/okex/api/private.rb, line 23 def signature(*args) OpenSSL::HMAC.hexdigest(digest, secret, signature_payload(*args)) end
signature_payload(method, path, query)
click to toggle source
# File lib/okex/api/private.rb, line 27 def signature_payload(method, path, query) payload = [ts, method.to_s.upcase, "/api", path].compact_empty if method==:post payload << query.to_json elsif method==:get payload << ("?" + URI.encode_www_form(query)) end unless query.empty? payload.join.encode("UTF-8") end
ts()
click to toggle source
# File lib/okex/api/private.rb, line 39 def ts @ts ||= (Time.now.to_f * 1000).to_i end