私はKafka Reactive StreamsのコンシューマからBytestringとしてファイルを受信しています。私はエンティティHttpEntity.DefaultとしてこのBytestringでakka-httpリクエストを構築したいと思います。 HttpEntity.Defaultは、ソース[Bytestring、Any]をそのパラメータの1つとして必要とします。Bytestringをソースに変換する方法[Bytestring、Any]
2つを接続するにはどうすればよいですか?
私はKafka Reactive StreamsのコンシューマからBytestringとしてファイルを受信しています。私はエンティティHttpEntity.DefaultとしてこのBytestringでakka-httpリクエストを構築したいと思います。 HttpEntity.Defaultは、ソース[Bytestring、Any]をそのパラメータの1つとして必要とします。Bytestringをソースに変換する方法[Bytestring、Any]
2つを接続するにはどうすればよいですか?
あなたはSource.single
を使用することができます。
HttpEntity.Default(
ContentTypes.`application/octet-stream`,
byteString.size,
Source.single(byteString)
)
言った、あなたは正確にHttpEntity.Default
を必要と本当によろしいですか?あなたはByteString
から直接実体を構築するためにHttpEntity.apply(ContentType, ByteString)
メソッドを使用することができます。
HttpEntity(ContentTypes.`application/octet-stream`, byteString)
それはHttpEntity.Strict
代わりのHttpEntity.Default
のインスタンスを返しますが、Strict
がうまくHTTPリクエストを送信するために使用することができます。
ありがとう、これは間違いなく動作します。私はKafkaのコンシューマークライアントからソース[Bytestring]を取り出すことができるので、KafkaからAkka-httpへのストリームをチェーンできるようになりました:今、Bytestring全体をメモリにロードしてからakka-http要求を行うためですか? – Rabzu
私はカフカを使ったことがないので、私は知らない。しかし、私はそれが可能であると思う、少なくとも、私はそれが非常に好きなものを見る[反応カフカ](http://doc.akka.io/docs/akka-stream-kafka/current/consumer.html#connecting-producerコンシューマ向けドキュメント)。おそらく別の質問をする必要があります。 –
ファイルサイズがわかっているため、HttpEntity.Defaultを使用しています – Rabzu