Bar*_* BN 3 scala playframework
我正在使用Ok.sendFile从服务器下载文件.
为此,我需要在服务器的本地文件系统中创建该文件.
但是,由于服务器没有使用文件本身,并且每个用户请求都创建了一个新文件,我想在下载操作完成后删除该文件.
我怎么能这样做,考虑到我已经完成了我的行动并返回了结果?
def index = Action {
val fileToServe = generateFile("fileToServe.pdf")
Ok.sendFile(new java.io.File(fileToServe))}
// How can I "clean-up" fileToServe.pdf after the d/l completes?
Run Code Online (Sandbox Code Playgroud)
Bla*_*... 10
我建议你使用play.api.libs.Files.TemporaryFile,这样你就可以使用方法的onClose参数Ok.sendFile.
val fileToServe = TemporaryFile(new File("/tmp/" + tmpname))
Ok.sendFile(fileToServe.file, onClose = () => { fileToServe.clean })
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
939 次 |
| 最近记录: |