我正在使用scala akka-http服务器。我在服务器端创建了一个docx (word)
文件,我想返回一个响应,以便当响应到达客户端时,应该开始自动下载过程。我在客户端使用angular2。另外,用于创建docx文件的POI也可以使用。
val document = new XWPFDocument //create an empty Document
val paragraph = document.createParagraph()
val titleRun = paragraph.createRun()
//Some configuration..
....
document.write(new FileOutputStream(new File("./" + title.trim() + ".docx")))
这是由用户请求触发的方法。现在,文件已保存到当前目录。所以问题是,如何更改代码以使文件通过响应发送。
答案 0 :(得分:1)
akka-http具有用于将文件提供给客户端请求的指令
您也许可以使用PipedOutputStream代替FileOuputStream-例如https://github.com/pjfanning/prometheus-akka-sample/blob/master/src/main/scala/com/example/akka/http/PrometheusService.scala