需要在application.properties里启用压缩,并设置压缩支持的格式(默认支持text/html等,但不支持application/json)
server.compression.enabled=true server.compression.mime-types=application/javascript,application/json,application/xml,text/html,text/xml,text/plain,text/javascript默认情况下,仅会压缩2048字节以上的内容
server.compression.min-response-size=2048上面设置压缩大于2048字节的文件
还需要在代码中设置如下:
@Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/static/**").addResourceLocations("/static/") .setCacheControl(CacheControl.maxAge(10, TimeUnit.MINUTES).cachePrivate()) .resourceChain(true) .addResolver(new GzipResourceResolver()); super.addResourceHandlers(registry); }
如果在配置文件中配置了不生效,则需要设置上面的内容。
以上内容,详见 org.springframework.boot.context.embedded.Compression
以及 org.springframework.boot.autoconfigure.web.ServerProperties