我正在使用express 4.x并在我的app.js中开启了压缩中间件,如下所示:
var compression = require('compression');
var app = express();
app.use(compression());
app.use('/', require('./static'));
app.use('/api/xxx', require('./api/xxx'));
当我在Safari Web检查器中检查时,某些文件(例如我的app.js)确实已压缩,您可以看到文件大小的差异(虽然很小):
但其他人喜欢api请求不是:
考虑到我的服务器只是根据请求发送json,为什么传输的数据没有被大量压缩,大小似乎没有差别?
答案 0 :(得分:0)
这是因为您需要设置压缩级别。
请阅读此处的文档:https://github.com/expressjs/compression
我的设置为最大压缩,如下所示:
// Compress content
app.use(compression({
level: 9,
memLevel: 9
}));