【发布时间】:2018-04-26 13:19:46
【问题描述】:
我正在使用 selenium 和 browsermob-proxy,最终由“netty-all”提供支持,以访问一个网站(在我的控制之外),该网站提供了大量的标头作为其身份验证过程的一部分。代理因网络错误而失败:
io.netty.handler.codec.TooLongFrameException: HTTP header is larger than 16384 bytes., version: HTTP/1.1
我需要从 netty-alljar 中删除我的 browsermob-proxy 所依赖的所有此类限制,可扩展性、性能和内存节省与此用例无关。
克隆了 repo,我改变了:
DEFAULT_MAX_FRAME_SIZEinWebSocket00FrameDecoder(io.netty.handler.codec.http.websocketx)HttpObjectDecoderio.netty.handler.codec.http中的默认构造函数
在适当的情况下发送至Integer.MAX_VALUE。
但是,即使使用这些新设置,它仍然会在使用中不断抛出“HTTP 标头大于 16384 字节”。
- 这个 16384 限制还能从哪里来?
- 如何在保留完整功能的同时删除它(以可接受的效率/内存使用成本等)
【问题讨论】:
-
请添加完整的 stracktrace
标签: selenium http netty browsermob-proxy