class ByRobot::Request
Constants
- BASEURL
Public Class Methods
check_required_params(params, names)
click to toggle source
# File lib/by_robot/request.rb, line 6 def self.check_required_params(params, names) missing_params = names.map(&:to_s) - params.keys.map(&:to_s) warn("Warn: missing required option: #{missing_params.join(',')}") if missing_params.size > 0 end
get(action, params)
click to toggle source
# File lib/by_robot/request.rb, line 30 def self.get(action, params) JSON.parse RestClient.get("#{BASEURL}/#{action}", headers.merge({params: params})) end
headers()
click to toggle source
# File lib/by_robot/request.rb, line 16 def self.headers headers = { content_type: :json, accept: :json, 'AcceptCharset': 'utf-8', 'contentType': 'utf-8', datetime: Time.now.utc.strftime('%a, %d %b %Y %H:%M:%S GMT'), appkey: ByRobot.app_key } str = headers[:appkey] + "\n" + headers[:datetime] headers[:sign] = sign(str) headers end
post(action, params)
click to toggle source
# File lib/by_robot/request.rb, line 34 def self.post(action, params) JSON.parse RestClient.post("#{BASEURL}/#{action}", params.to_json, headers) end
sign(sign_message)
click to toggle source
# File lib/by_robot/request.rb, line 11 def self.sign(sign_message) digest = OpenSSL::Digest.new('sha1') sign = Base64.encode64 OpenSSL::HMAC.digest(digest, ByRobot.app_secret, sign_message) end