クライアント/サーバーアップロードアプリケーションを構築しています。クライアントは複数の大きなファイルをサーバーに送信しようとしています。
ChunkedFile のような ChunkedInput クラスは、ファイルのチャンクのみをサーバーに送信することが既にわかっています。クライアントは ChunkedWriteHandler をパイプラインに追加するだけで、ファイルを次々と送信します (これは正しいですか?)
//Client snippets
public void initChannel(SocketChannel ch) throws Exception {
ch.pipeline().addLast(new ChunkedWriteHandler());
}
public void send(Channel channel, List<File> files){
for (Iterator<File> iterator = files.iterator(); iterator.hasNext();) {
File file = iterator.next();
channel.write(file.length());
ChannelFuture cf = channel.writeAndFlush(new ChunkedFile(file));
cf.await();
}
しかし、私はサーバー側で何をしているのでしょうか? 最初のファイルの終わりをどのように認識できますか? ChunkedFile はそのチャンクでファイルサイズを送信していませんか? 誰かがサーバー側のコード スニペットを投稿できますか? 前もって感謝します