class TerrasmsApi::Request
Constants
- API_BASE_URL
Attributes
access_token[R]
Public Class Methods
new(access_token:)
click to toggle source
# File lib/terrasms_api/request.rb, line 11 def initialize(access_token:) @access_token = access_token end
Private Instance Methods
body_params(args = {})
click to toggle source
# File lib/terrasms_api/request.rb, line 36 def body_params(args = {}) asc_args = Hash[ args.sort_by { |key, val| key } ] md5_sign = Digest::MD5.hexdigest([ RestClient::Utils.flatten_params(asc_args).map { |k, v| v.nil? ? k : "#{k}=#{v}" }.join, access_token ].join('')) args.merge(sign: md5_sign) end
build_full_url(path)
click to toggle source
# File lib/terrasms_api/request.rb, line 32 def build_full_url(path) [API_BASE_URL, path].join('/') end
headers()
click to toggle source
# File lib/terrasms_api/request.rb, line 46 def headers {} end
parsed_body(response)
click to toggle source
# File lib/terrasms_api/request.rb, line 54 def parsed_body(response) JSON.parse(response.body) rescue JSON::ParserError response.body end
with_handled_errors() { || ... }
click to toggle source
# File lib/terrasms_api/request.rb, line 50 def with_handled_errors TerrasmsApi::Error.call { yield } end