torayeff
torayeff

Reputation: 9702

Google Cloud Storage Force Download

I am storing my files in Google Cloud Storage. I would like to provide downloadable links. For example https://yeketakclub.storage.googleapis.com/audios/yeketak.club-dm7aEYv7R53JRlti3HHn.mp3 one of audio files stored in google cloud storage. But when it is clicked browser tries to open it. Is it possible to force download?

Upvotes: 7

Views: 5780

Answers (4)

jason
jason

Reputation: 1172

In the Google Console bucket area you can click the menu and edit metadata on the object and set the Content-Disposition to attachment

enter image description here enter image description here

Upvotes: 1

zackify
zackify

Reputation: 5434

The correct answer is neither of these! (if you don't want to edit a file's metadata) Add this on the end of any signed url:

&response-content-disposition=attachment;

This will make all storage links force a download instead of opening.

Upvotes: 16

Jeffrey Godwyll
Jeffrey Godwyll

Reputation: 3893

I'm not sure if this is necessarily a Google Cloud Storage issue (I might be wrong). The link provided there is downloadable. It just happens to be that your browser "prefers" to play it most probably because it recognises the MIME Type as one that can be handled.

In Chrome for instance, you can force download of the file by using alt + click.

Or you can right click and save link as...

right click to save file

Upvotes: 5

Travis Hobrla
Travis Hobrla

Reputation: 5509

You can signal browsers to download the object while still retaining an accurate content type by setting the content disposition to attachment. For, example using gsutil you can do this like so:

gsutil setmeta -h 'Content-Disposition:attachment' gs://yeketakclub/audios/yeketak.club-dm7aEYv7R53JRlti3HHn.mp3

Now your object can still have the correct content type of "audio/mpeg3" (or whatever happens to match the object's content).

Upvotes: 9

Related Questions