我正在使用 Play Framework 2.0.3 创建一个应用程序,该应用程序提供用户可以下载的 Excel 文件。
response().setContentType("application/x-download");
response().setHeader("Content-disposition","attachment; filename=tradeLogTest.xlsx");
但是,如何从response()
tks 获取输出流?
我正在使用 Play Framework 2.0.3 创建一个应用程序,该应用程序提供用户可以下载的 Excel 文件。
response().setContentType("application/x-download");
response().setHeader("Content-disposition","attachment; filename=tradeLogTest.xlsx");
但是,如何从response()
tks 获取输出流?
Play 的动作可以返回一个 File:
response().setContentType("application/x-download");
response().setHeader("Content-disposition","attachment; filename=tradeLogTest.xlsx");
return ok(new File("/absolute/path/to/tradeLogTest.xlsx"));
可以在 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