Playframework 播放框架集下载文件名
我通过play.mvc.Results.ok(文件)从控制器返回一个文件。但是,文件下载为“下载”,没有特定的文件名。有没有办法设置下载的名称(即image.png)Playframework 播放框架集下载文件名,playframework,playframework-2.0,playframework-2.1,Playframework,Playframework 2.0,Playframework 2.1,我通过play.mvc.Results.ok(文件)从控制器返回一个文件。但是,文件下载为“下载”,没有特定的文件名。有没有办法设置下载的名称(即image.png) 谢谢为了定义特定的文件名,在返回确定(文件)结果之前,您必须在响应中设置内容处置标题 下面是一个示例代码: public static Result myAction() { ... response().setHeader("Content-Disposition", "attachment; filename=
谢谢为了定义特定的文件名,在返回
确定(文件)
结果之前,您必须在响应中设置内容处置
标题
下面是一个示例代码:
public static Result myAction() {
...
response().setHeader("Content-Disposition", "attachment; filename=image.png");
return ok(file);
}
在Scala(Play 2.4.x)中实现这一点的魔法是 请注意,它是复数形式,是一个映射,如果需要,可以有多个值 当然,接下来您要做的是将其作为实际下载,如下所示:
def myAction() {
...
ok(file).withHeaders(CONTENT_TYPE -> "application/x-download", CONTENT_DISPOSITION -> "attachment; filename=image.png")
}
请注意,控制器中定义的大多数标头都有常量
def myAction() {
...
ok(file).withHeaders(CONTENT_TYPE -> "application/x-download", CONTENT_DISPOSITION -> "attachment; filename=image.png")
}