У меня есть несколько файлов PDF на удаленном сервере (Apache + Tomcat), отличных от того, на котором работает приложение Rails. И я хочу, чтобы пользователи могли загружать их после нажатия кнопки «ОК» в диалоговом окне «Сохранить как»
Итак, в моем контроллере у меня есть действие для обработки запросов на загрузку. Это действие просто redirects_to
URL-адрес PDF. Проблема в том, что диалоговое окно «Сохранить как» не открывается
def download
url = "#{server}/...../file.pdf"
redirect_to url
end
Однако, если я возьму полный URL-адрес для PDF-файла и вставлю его в адресную строку браузера, произойдет желаемое поведение
Очевидно, что разница между двумя запросами очевидна. У меня нет - потому что я не знаю, как - например, установить Content-disposition или Content-type. Или, возможно, redirect_to - просто неправильный путь
И поэтому я надеюсь, что кто-то здесь может помочь мне понять, почему:
- «очевидное» решение - использование redirect_to - не работает
- Почему (1) может не быть предпочтительным вариантом, а такие параметры, как send_file, - это то, что предлагается чаще.
- Если send_file - это то, что нужно, то мне нужно сначала перенести файл на мой сервер Rails, прежде чем вызывать send_file. Как я могу это сделать?