Module: GoogleUrlSignatures
- Defined in:
- lib/google_url_signatures.rb
Class Method Summary collapse
Class Method Details
.sign(key, url) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/google_url_signatures.rb', line 12 def self.sign(key, url) uri = URI.parse url path_and_query = uri.path + '?' + uri.query decoded_key = Base64.decode64(key.tr('-_','+/')) decoded_signature = (HMAC::SHA1.new(decoded_key) << path_and_query).digest signature = Base64.encode64(decoded_signature).tr('+/','-_') "#{uri.scheme}://#{uri.host}#{path_and_query}&signature=#{signature}" end |