如何禁用每个端点的GZipEncoder?

时间:2018-09-27 17:33:13

标签: java jersey-2.0

我的端点受到了总是提供“ gzip”接受编码的浏览器的攻击。但是,对于某些端点,我想避免gzip所需的额外cpu处理(它们返回已压缩的数据)。有没有一种方法可以向GZipEncoder发出信号,“我不想将此应用于这些端点”?

1 个答案:

答案 0 :(得分:1)

我通过创建DynamicFeature和注释解决了这一问题,将它们结合使用时,会删除gzip,br和deflate的接受编码。我不确定这是否是最好的方法,但是它能起作用。

文档

https://docs.oracle.com/javaee/7/api/javax/ws/rs/container/DynamicFeature.html

我遵循的示例

https://github.com/jersey/jersey/blob/master/core-server/src/main/java/org/glassfish/jersey/server/filter/RolesAllowedDynamicFeature.java