使用 sinatra 和 pdf 生成 pdf。 pdf在浏览器中显示奇数

generating pdf using sinatra and pdf. pdf displays odd in browser

我正在使用 pdfkit 通过以下代码生成 pdf:

get "/:lang/:course/:project/protected/:project.pdf" do
    PDFKit.configure do |config|
    config.wkhtmltopdf = '/usr/local/bin/wkhtmltopdf'
    config.default_options = {
      :page_size => 'A3',
      # :load_error_handling => 'skip',
      # :load_media_error_handling => "ignore",
      # :debug_javascript => true,
      # :javascript_delay => "300",
      :print_media_type => true,
      :margin_top => "8mm",
      :margin_bottom => "5mm",
      :footer_spacing => "-8",
     }
   end 
    kit = PDFKit.new("http://localhost:4000/#{params[:lang]}/#{params[:course]}/#{params[:project]}/")
    kit.to_pdf

我可以在我的 puma 日志中看到它正在生成 pdf,但是当它加载页面时我看到以下内容:

它看起来像是在尝试呈现 pdf,但出于我不知道的原因,它会那样显示。我在 Chrome 和 Firefox 中测试了这个。

谁能指出我正确的方向?

在获取请求中我需要添加以下代码:

headers['Content-Type'] = 'application/pdf'