Gzip用Wildfly编码http响应

时间:2018-03-20 11:06:59

标签: java configuration gzip wildfly

如果请求包含Accepted-Encoding:gzip header,您知道是否可以对来自wildfly 10的应用程序运行的响应编码为gzip格式?我希望通过Wildfly配置进行更改,并在响应中包含一些响应包含gzip编码的指示(content-encoding:gzip)。

我已经读过,因为使用gzip过滤器可以进行wildfly 8这样的编码,我尝试将过滤器添加到类似于此处描述的Wildfly配置:https://rumianom.pl/rumianom/entry/gzip_content_encoding_in_wildfly,但是没有成功。我试过很多像equals[%{i,Accepted-Encoding},\"gzip\"](我在下位单元测试中找到类似的例子)或regex[pattern='(?:gzip)(;.*)?', value=%{o,Accept-Encoding}, full-match=false]这样的pradicates。可悲的是,我的解决方案都没有奏效。

2 个答案:

答案 0 :(得分:0)

这个或它的变体实际上应该起作用(使用Wfly10并且已经这样做了很长时间):

/tmp/output

在你的情况下,你需要定义参考/配置过滤器,至少是gzipFilter。

答案 1 :(得分:0)

使用模式<filter-ref name="gzipFilter" predicate="regex(pattern='(?:gzip)(;.*)?', value=%{i,Accept-Encoding}, full-match=true)"/>进行过滤。如果您的模式有特殊字符,如。你需要逃避它们。 请注意,我没有找到任何关于&#34; i&#34;和&#34; o&#34;值中的值=。似乎&#34; o&#34;在app(响应)的输出中给出模式搜索标题,如果&#34; i&#34;给它匹配输入消息(请求)。