Skip to content

Instantly share code, notes, and snippets.

@urlbox
Last active December 13, 2015 20:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save urlbox/4970997 to your computer and use it in GitHub Desktop.
Save urlbox/4970997 to your computer and use it in GitHub Desktop.
urlbox ruby
require 'cgi'
require 'openssl'
require 'open-uri'
def urlbox(url, options={})
urlbox_apikey = 'xxx-xxx'
urlbox_secret = 'xxx-xxx'
query = {
:url => url,
:force => options[:force],
:full_page => options[:full_page],
:thumb_width => options[:thumb_width],
:width => options[:width],
:height => options[:height],
}
query_string = query.
sort_by {|s| s[0].to_s }.
select {|s| s[1] }.
map {|s| s.map {|v| CGI::escape(v.to_s) }.join('=') }.
join('&')
# puts query_string
puts URI::encode(query_string)
token = OpenSSL::HMAC.hexdigest('sha1', urlbox_secret, query_string)
"https://api.urlbox.io/v1/#{urlbox_apikey}/#{token}/png?#{query_string}"
end
puts urlbox "www.google.com"
@thiagopintodev
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment