diff --git a/lib/s3/s3_interface.rb b/lib/s3/s3_interface.rb index 4c8e4b7..68ec1d7 100644 --- a/lib/s3/s3_interface.rb +++ b/lib/s3/s3_interface.rb @@ -106,7 +106,11 @@ def canonical_string(method, path, headers={}, expires=nil) # :nodoc: out_string << (key[/^#{AMAZON_HEADER_PREFIX}/o] ? "#{key}:#{value}\n" : "#{value}\n") end # ignore everything after the question mark... - out_string << path.gsub(/\?.*$/, '') + #out_string << path.gsub(/\?.*$/, '') + + # To allow passing query parameters such as response-content-disposition + out_string << path + # ...unless there is an acl or torrent parameter out_string << '?acl' if path[/[&?]acl($|&|=)/] out_string << '?policy' if path[/[&?]policy($|&|=)/]