Release asset links using generic packages don't have a Content-Disposition when using Azure as objest storage

Initially discussed on Slack (internal) https://gitlab.slack.com/archives/CETG54GQ0/p1720786125065729 and mentioned on #341061 (comment 1997056923)

I noticed on our self-hosted instance that after upgrading from 16.9 to 17.1 the release assets links started downloading a file with what looks like a unique name (without extension) instead of the filename provided on the asset.

!155013 (merged) (which also explains why this happened) fixed this issue when downloading the files directly from the generic package page, but it didn't fix it when downloading the asset from the release page.

This is similar to what is described in #341061 (closed), as it looks like the Content-Disposition attribute is not being set and we also are using Azure as our object storage provider.

I tried reproducing this on SaaS but it works, so it seems only related to the Azure provider.

Current workaround

Just like for #341061 (closed), setting the download_proxy option to true on our instance solves the issue.

Possible fix

stanhu had a look and suggested trying this (!155013 (comment 1997761297))

diff --git a/lib/api/helpers.rb b/lib/api/helpers.rb
index 82cd10ce69f0..a5ec50cc9b69 100644
--- a/lib/api/helpers.rb
+++ b/lib/api/helpers.rb
@@ -691,7 +691,7 @@ def present_carrierwave_file!(file, supports_direct_download: true, content_disp
         redirect_params = {}
         if content_disposition
           response_disposition = ActionDispatch::Http::ContentDisposition.format(disposition: content_disposition, filename: file.filename)
-          redirect_params[:query] = { 'response-content-disposition': response_disposition, 'response-content-type': file.content_type }
+          redirect_params[:query] = { 'response-content-disposition' => response_disposition, 'response-content-type' => file.content_type }
         end

         file_url = ObjectStorage::CDN::FileUrl.new(file: file, ip_address: ip_address, redirect_params: redirect_params)