私は、0で終了するエンティティからなるHTTPレスポンスを持っています。NOOB:HttpClientCodecにDelimiterBasedFrameDecoderを結ぶ
私は各0終了エンティティを個別に扱いたいと思います。明らかにそうする方法は、DelimiterBasedFrameDecoderにフックするように見えます。
ただし、HttpClientCodecの後、メッセージはHttpResponseまたはHttpChunkですが、DelimiterBasedFrameDecoder(任意のFrameDecoder)は生のChannelBufferで操作する必要があります。
私は何か一緒にハックすることができると確信していますが、私はこれを行うための「正しい」方法を知りたいと思います。 「権利」は、エレガントで正確で、Nettyの「精神」として様々に定義されているかもしれません。
これがあまりにも素朴であれば謝罪してください。アプリケーションが直接自分のワイヤー/フレーム形式でTCP/UDPを使用する場合
ローランド
ありがとうございます! HTTPサーバーのデコードパイプラインを提示したと思いますか?私のアプリは、チャンクされた応答を受け取るHTTPクライアントです。そして、私は彼らが到着するときにチャンクを処理したいです。私は、完全なメッセージが完了するまでHttpChunkAggregatorが停止することを想定していますか? 「単純なアップストリームハンドラをデコードする方が好きですか? –
はい、あなたは正しいです:)、私はそれを更新しました。 HttpChunkAggregatorは、最後のチャンクが受信されるまで待ってから、完全なHttpResponseでメッセージイベントを発生させます。私が単純なアップストリームハンドラを使用することは、パイプラインの最後の2つのハンドラを置き換える単純なアップストリームハンドラの実装を持つことができることです。 –