scala - 在akka-http完成响应后如何清理?
问题描述
我生成一个文件作为响应发送。响应后下载该 file.csv 想要删除
path("hello") {
get {
complete(HttpEntity.fromFile(ContentTypes.`text/csv(UTF-8)`,file.csv))
}
}
解决方案
这是解决方案
val source = FileIO.fromPath(file.toPath)
.watchTermination() { case (_, result) =>
result.onComplete(_ => {
file.delete()
log.info(s"file Deleted ${file.getPath}")
}
)
}
complete(HttpEntity(ContentTypes.`text/csv(UTF-8)`, source))
它对我来说很好用
推荐阅读
- html - 为什么引导关闭图标按钮顶部有空间?
- angular - 在 ngx-formly 的帮助下,数组 Angular 9 中的动态表单
- twilio - 是否可以通过 Twilio 使用 SIP 到 PSTN 进行出站呼叫?
- c - 从 SDL2 音频回调函数调用 Chicken Scheme 函数挂起
- ios - “tel://”链接在 iPhone 模拟器上不起作用
- java - 为什么 Mybatis 必须提供无参数构造方法?
- python - 获取python列表的选定元素
- antd - 搜索图标不在中心
- react-native - 仅适用于 android 的 React native throwing 406“Not Acceptable”
- android - 如何在 Jetpack Navigation 中单击按钮时从片段二返回到片段一的先前目的地