我是新手,并且正在尝试将数组(字节(流回用户。我一直在阅读有关此文档的
https://www.playframework.com/documentation/2.5.x/scalastream
但是,当我实施此功能时,它说块已被弃用,我应该使用Akka Streams源来使用块。目前我有
Ok.chunked(Source.fromBytes(file))
file是array [byte],但错误是:
Expected: Source[NotInferredC, _], actual: Source
遇到此错误后,我更深入地尝试获得另一个解决方案,然后尝试将流式实体制作到我的位置:
Ok.sendEntity(HttpEntity.Streamed(Source.fromBytes(file), None, None))
,相应的错误是:
expected: Source[ByteString, _] actual: Source
我想知道,如何将我的数组(字节(转换为响应中流式传输的适当格式,以及选择块的vs endentity方法的好处。谢谢!
val file: Array[Byte] = ???
Ok.sendEntity(HttpEntity.Strict(ByteString(file), None))
如果您的数据足够小,则使用Ok.sendEntity
。但是,如果它很大,那么您应该将其存储在硬盘驱动器上,将其通过小的和平(块(将其发送给使用Ok.chunked
的用户。