aboutsummaryrefslogtreecommitdiffstats
path: root/app/models/active_storage/service/gcs_service.rb
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2017-07-23 17:50:31 -0500
committerDavid Heinemeier Hansson <david@loudthinking.com>2017-07-23 17:50:31 -0500
commit5944850bc1259ca42381ce83d155ddd914b968c6 (patch)
treea8579cc18b2d412a978b02385f15a22c56dd3ac4 /app/models/active_storage/service/gcs_service.rb
parentcb2f7d499466acd2a8c9b917262914e46b5bf104 (diff)
downloadrails-5944850bc1259ca42381ce83d155ddd914b968c6.tar.gz
rails-5944850bc1259ca42381ce83d155ddd914b968c6.tar.bz2
rails-5944850bc1259ca42381ce83d155ddd914b968c6.zip
Tell service which content-type to use for the response
Diffstat (limited to 'app/models/active_storage/service/gcs_service.rb')
-rw-r--r--app/models/active_storage/service/gcs_service.rb8
1 files changed, 5 insertions, 3 deletions
diff --git a/app/models/active_storage/service/gcs_service.rb b/app/models/active_storage/service/gcs_service.rb
index 7053a130c0..4530de22f6 100644
--- a/app/models/active_storage/service/gcs_service.rb
+++ b/app/models/active_storage/service/gcs_service.rb
@@ -42,10 +42,12 @@ class ActiveStorage::Service::GCSService < ActiveStorage::Service
end
end
- def url(key, expires_in:, disposition:, filename:)
+ def url(key, expires_in:, disposition:, filename:, content_type:)
instrument :url, key do |payload|
- query = { "response-content-disposition" => "#{disposition}; filename=\"#{filename}\"" }
- generated_url = file_for(key).signed_url(expires: expires_in, query: query)
+ generated_url = file_for(key).signed_url expires: expires_in, query: {
+ "response-content-disposition" => "#{disposition}; filename=\"#{filename}\"",
+ "response-content-type" => content_type
+ }
payload[:url] = generated_url