添加gzip到spring嵌入式tomcat

时间:2015-07-19 09:06:39

标签: java spring spring-boot gzip embedded-tomcat-7

我正在尝试将gzip压缩添加到我的服务器(读取和写入)我已尝试过(弹簧启动):

html body map { height: 100%; }

但是当我的客户发送时:

server.tomcat.compression=on
server.tomcat.compressableMimeTypes=application/json,application/xml,text/html,text/xml,text/plain
带标题的

        GZIPOutputStream gzip = new GZIPOutputStream(baos);
        gzip.write(content.getBytes(Charset.forName("UTF8")));
        gzip.close();

数据到达仍然压缩的服务。 我错过了什么?

2 个答案:

答案 0 :(得分:1)

确保您的客户端发送了正确的Content-Encoding标头,而没有它Tomcat不知道需要解压缩。请参阅this answer for details

答案 1 :(得分:1)

我最终使用现有的过滤器:

  <dependency>
        <groupId>net.sourceforge.pjl-comp-filter</groupId>
        <artifactId>pjl-comp-filter</artifactId>
        <version>1.7</version>
    </dependency>

为它添加了一个bean(新的CompressingFilter())

如果有人遇到同样的问题,或者知道为什么它没有使用弹簧启动配置,我很想知道。