1

我有一个应用程序必须显示不同格式的文件。格式列表可能有限,但它们由不同的格式组成。它们可以是 .pdf、.docx、.odt、.png 等。

在我的控制器中,显示操作如下所示。“内容”是从包含不同格式文件的给定网站呈现的。

    def show 
     send_data(content, :disposition => 'inline', :type => format_finder(params[:format]))
    end

    def format_finder(format)
        formats={"pdf" => "application/pdf",
       "docx" => "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
       "png" => "image/png",
       "html" => "text/html",
       "odt" => "application/vnd.oasis.opendocument.text",
       "ods" => "application/vnd.oasis.opendocument.spreadsheet",
       "jpg" => 'image/jpeg'}
     if formats.has_key?(format)
       return formats[format]
     end
   end

问题是浏览器(chrome)正在下载文件而不是显示它们,PDF除外。我该如何解决这个问题?Firefox 正在下载所有文件,即使它是 PDF 文件。

4

0 回答 0