如何使用Play Framework 2.0下载文件

我正在使用Play Framework 2.0.3创建一个应用程序,该应用程序提供应该可由用户下载的Excel文件。

response().setContentType("application/x-download"); response().setHeader("Content-disposition","attachment; filename=tradeLogTest.xlsx"); 

但是,如何从response() ?tks获取输出流

Play的动作可以返回一个文件:

 response().setContentType("application/x-download"); response().setHeader("Content-disposition","attachment; filename=tradeLogTest.xlsx"); return ok(new File("/absolute/path/to/tradeLogTest.xlsx")); 

这是结果的API

提供静态文件的下载选项可以在Play中完成:

 Ok.sendFile(new File("path to file/abc.csv"), inline=true).withHeaders(CACHE_CONTROL->"max-age=3600",CONTENT_DISPOSITION->"attachment; filename=abc.csv", CONTENT_TYPE->"application/x-download"); 

还有其他参数可用

对于Internet Explorer – 请确保设置“内容处理”

服务文件如果将整个内容加载到内存中以获取简单的内容,那么大数据集又是什么问题? 假设我们想要将大文件发送回Web客户端。

欲了解更多信息,请访问: http : //www.playframework.com/documentation/2.0.x/JavaStream