Class: Mixpanel::URI
- Inherits:
-
Object
- Object
- Mixpanel::URI
- Defined in:
- lib/mixpanel/uri.rb
Overview
Utilities to assist generating and requesting URIs
Class Method Summary collapse
Class Method Details
.encode(params) ⇒ Object
17 18 19 |
# File 'lib/mixpanel/uri.rb', line 17 def self.encode(params) params.map { |key, val| "#{key}=#{CGI.escape(val.to_s)}" }.sort.join('&') end |
.get(uri, timeout, secret) ⇒ Object
21 22 23 24 25 26 27 28 |
# File 'lib/mixpanel/uri.rb', line 21 def self.get(uri, timeout, secret) ::URI.parse(uri).read( read_timeout: timeout, http_basic_authentication: [secret, nil] ) rescue OpenURI::HTTPError => error raise HTTPError, JSON.parse(error.io.read)['error'] end |
.mixpanel(resource, params) ⇒ Object
12 13 14 15 |
# File 'lib/mixpanel/uri.rb', line 12 def self.mixpanel(resource, params) base = Mixpanel::Client.base_uri_for_resource(resource) "#{File.join([base, resource.to_s])}?#{encode(params)}" end |