class TopDMC::Resources::Base
Public Class Methods
new(client)
click to toggle source
# File lib/topdmc/resources/base.rb, line 13 def initialize(client) @client = client end
Private Instance Methods
perform_request(request_method, path, params={})
click to toggle source
# File lib/topdmc/resources/base.rb, line 18 def perform_request(request_method, path, params={}) # 处理请求参数 base_params ={ timestamp: Time.now.to_i, nonce: nonce, client_id: @client.client_id } # get请求合并参数 if request_method=='GET' then base_params.merge! params end base_params[:sign] = sign(request_method,path,base_params,@client.client_secure) # 处理请求地址 path = "#{@client.url}#{path}" payload={} payload = params if request_method=='POST' begin response = RestClient::Request.execute( method: request_method, url: path, headers: { params: base_params, payload: payload, user_agent: @client.user_agent, :content_type => :json, :accept => :json} ) return JSON.parse(response.body) rescue => e begin return JSON.parse(e.response.body) rescue => ex raise ex end end end