Принудительно загрузить файл, а не открывать браузер - PullRequest
5 голосов
/ 02 февраля 2011

Я хотел бы загрузить http://foobar.com/song.mp3 как song.mp3, вместо того, чтобы Chrome открывал его в своем родном <audio> проигрывателе в браузере.

Как я могу это подтвердить?

1 Ответ

12 голосов
/ 02 февраля 2011

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

Content-Disposition: attachment; filename=song.mp3;
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary

Метод send_file сделает это за вас:

get '/:file' do |file|
  file = File.join('/some/path', file)
  send_file(file, :disposition => 'attachment', :filename => File.basename(file))
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...