2

我在 Java play 2 中生成 PDF(使用外部资源)并将它们存储在我项目的根目录中的 pdfs/ 文件夹中。

现在,我在 Java 中不是那么好,如果不将 PDF 放入公共文件夹中,我将无法显示它(这不可能,因为它不安全)。所以我的问题是:

如何在客户端浏览器中显示 PDF 文件而不将其放入公用文件夹?

4

2 回答 2

3

只需发送二进制表示,并指定 PDF 内容类型:

public static Result createPDF() {
  byte[] pdfAsBinary = ...
  response().setContentType("application/pdf");
  return ok(pdfAsBinary);
}
于 2013-06-05T13:14:05.273 回答
3

找到了解决方案: return ok(new FileInputStream("pdfs/doc.pdf")).as("application/pdf");

于 2013-06-05T15:40:05.377 回答