我需要添加一个'通道处理程序'来解压缩gzip压缩内容。我不知道怎么做这个没有网络知识。有人能指出我正确的方向吗?
答案 0 :(得分:1)
正如其他人指出的那样,你的代码有点太长了,这使得网站上的人们的生活变得更加困难,但我想我可以帮助你一点点。
为了给出关于netty的一个小解释,你收到的每个请求都通过一个处理程序管道,每个请求都有自己的管道关联。
因此,在启动管道的方法中,您应该为解压缩添加处理程序,在您的情况下:
initChannelPipeline(ChannelPipeline pipeline, HttpRequest httpRequest)
您正在寻找的处理程序是HttpContentDecompressor或HttpContentCompressor,无论您是尝试解压缩gzip压缩数据还是将其压缩为gzip(目前还不清楚您是否想要缩小gzip内容。你应该说如果没有压缩则进行gzip压缩或放气。如果没有压缩就把它放气。想象它是一个气球。当充气时,需要更多空间。)
您应该注意在管道中添加处理程序的顺序。
有关详细说明,请参阅Channel pipeline doc。