Play2.4 Scala在android设备上下载pdf文件

时间:2016-11-11 16:48:35

标签: android scala pdf playframework

我的应用程序中有一个pdf下载链接,它可以在所有桌面设备上正常工作,但我无法在android上运行。

我的控制器结果如下:

Ok(outputStream.toByteArray)
  .withHeaders("Content-Disposition" -> s"""attachment; filename="$ticketId.PDF"""",
              "Connection" -> "Keep-Alive",
              "Content-Type" -> "application/octet-stream")

为什么这不适用于android?

1 个答案:

答案 0 :(得分:1)

只需在sendFile上使用Ok功能即可将文件发送到客户端浏览器。 sendFile通过读取文件的扩展名自动将响应的内容类型设置为正确的类型。所以,它非常友好,没有bug。

def file = Action {
 Ok.sendFile(new File(s"${sys.props("user.home")}/Desktop/something.pdf"), inline = true)
}