我正在使用Scala Play2框架,并试图将SVG字符串数据转换为其他文件类型,如PDF、PNG、JPEG,并将其作为文件发送到客户端。
我想要实现的是
但是,似乎发送一个文件并让客户端将其保存为静态文件是不可能的,因此我计划在客户端请求新的静态文件,并将其访问url返回给客户端,并通过Javascript打开它。在客户端完成下载后,删除服务器中的文件,但在这种方法中,我必须
def generateFile = {
...
...
outputStream.flush() // save the file to a disk
}
和
Ok.sendFile(new File("foo.pdf"))
我需要将文件读写到存储磁盘上。我不认为这是一个有效的方法。
有什么更好的方法来实现我想要的吗?
提前谢谢你。
发布于 2015-08-21 04:41:44
你为什么认为这不够有效?
我在一个项目中看到了类似的方法:
区别在于图像数据(在您的例子中是SVG字符串)不是由客户端发送的,而是存储在数据库中的。
也许您可以跳过将映像写入磁盘的步骤,如果转换库能够在内存中生成图像的话。
https://stackoverflow.com/questions/32131748
复制相似问题