Rust の actix-web で暗号化されたファイルをストリーミングしたい。酸化ナトリウムを使用して、暗号化されたファイルのチャンクをチャンクごとに復号化するループがあります。チャンクをクライアントに送信したい。
私のループは次のようになります。
while stream.is_not_finalized() {
match in_file.read(&mut buffer) {
Ok(num_read) if num_read > 0 => {
let (decrypted, _tag) = stream
.pull(&buffer[..num_read], None)
.map_err(|_| error::ErrorInternalServerError("Incorrect password"))
.unwrap();
// here I want to send decrypted to HttpResponse
continue;
}
Err(e) => error::ErrorInternalServerError(e),
_ => error::ErrorInternalServerError("Decryption error"), // reached EOF
};
}
パラメータとして astreaming
を必要とするメソッドを見つけました。Stream
チャンクごとに追加できるストリームを作成するにはどうすればよいですか?