gpt4 book ai didi

java - 在 netty 代理中添加 gzip deflate 的 channel 处理程序

转载 作者:行者123 更新时间:2023-12-01 11:36:33 25 4
gpt4 key购买 nike

在以下文件中: https://github.com/adamfisk/LittleProxy/blob/master/src/main/java/org/littleshoot/proxy/impl/ProxyToServerConnection.java

我需要添加一个“ channel 处理程序”,它将缩小 gzip 压缩的内容。在没有网络知识的情况下,我不知道如何做到这一点。有人能给我指出正确的方向吗?

最佳答案

正如其他人指出的那样,您的代码有点太长了,这使得该网站上的人们的生活变得更加困难,但我想我可以帮助您一点。

简单解释一下 netty,您收到的每个请求都会经过一个处理程序管道,并且每个请求都有自己的关联管道。

因此,在您的情况下,您应该在启动管道的方法中添加用于解压缩的处理程序:

initChannelPipeline(ChannelPipeline pipeline, HttpRequest httpRequest)

您正在寻找的处理程序是 HttpContentDecompressorHttpContentCompressor您是否正在尝试解压缩 gzip 数据或将其压缩为 gzip (目前尚不清楚,因为您说您想要压缩 gzip 内容。如果是 gzip 压缩的,则应该说 inflate 它,如果未压缩,则应该说 deflate it。将其视为一个气球. 充气时,需要更多空间)。

您应该注意在管道中添加处理程序的顺序。

参见Channel pipeline doc以获得更多解释。

关于java - 在 netty 代理中添加 gzip deflate 的 channel 处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29923605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com