2016-04-27 10 views
0

Я храню свои файлы в Google Cloud Storage. Я хотел бы предоставить загружаемые ссылки. Например, https://yeketakclub.storage.googleapis.com/audios/yeketak.club-dm7aEYv7R53JRlti3HHn.mp3 один из аудиофайлов, хранящихся в облачном хранилище Google. Но когда он нажимается, браузер пытается открыть его. Можно ли принудительно загрузить?Google Cloud Storage Force Загрузить

ответ

0

Я не уверен, что это обязательно проблема с облачным хранилищем Google (возможно, я ошибаюсь). Указанная ссылка доступна для загрузки. Просто случается так, что ваш браузер «предпочитает» играть, скорее всего, потому, что он распознает тип MIME как тот, который можно обрабатывать.

В Chrome, например, вы можете заставить загрузку файла с помощью альта + клика.

Или вы можете щелкнуть правой кнопкой и сохранить ссылку как ...

right click to save file

+0

Да в этом случае возможно. Но мне нужно принудительно загрузить, когда он щелкнут. – torayeff

+0

Я не пробовал, но вы можете заставить тип контента сказать 'application/octet-stream'? Таким образом, браузер не будет иметь никаких мнений. Вы можете использовать инструмент gsutil https://cloud.google.com/storage/docs/gsutil/addlhelp/WorkingWithObjectMetadata –

+0

Я попробую его сейчас. – torayeff

3

Вы можете сигнализировать браузеров, чтобы загрузить объект, сохраняя точный тип контента, установив расположение контента в приложении. Для, например, с помощью GSUtil вы можете сделать это как так:

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

Теперь ваш объект все еще может иметь правильный тип содержимого «аудио/mpeg3» (или что-то происходит, чтобы соответствовать содержанию объекта).

+0

Это именно то, что я сделал. – torayeff

0

Правильный ответ ни один из этих! (Если вы не хотите редактировать метаданные файла) Добавить это в конце любого подписанного URL:

&response-content-disposition=attachment; 

Это сделает все ссылки хранения заставить вместо загрузки открытия.

Смежные вопросы