我从 Kafka Reactive Streams 消费者处接收到一个字节字符串文件;我想用这个 Bytestring 作为实体 HttpEntity.Default 构造一个 akka-http 请求。 HttpEntity.Default 需要 Source[Bytestring, Any] 作为其参数之一。
连接两者的最佳方式是什么?
最佳答案
您可以使用Source.single
:
HttpEntity.Default(
ContentTypes.`application/octet-stream`,
byteString.size,
Source.single(byteString)
)
也就是说,您真的确定您确实需要 HttpEntity.Default
吗?您可以使用 HttpEntity.apply(ContentType, ByteString)
直接从 ByteString
构造实体的方法:
HttpEntity(ContentTypes.`application/octet-stream`, byteString)
它返回 HttpEntity.Strict
的实例而不是 HttpEntity.Default
,但 Strict
可以很好地用于发送 HTTP 请求。
关于scala - 如何将 Bytestring 转换为 Source[Bytestring, Any],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39765236/