2016-03-06 46 views
0

我用快递4.x和在我app.js打开压缩中间件这样的:除了静态文件,ExpressJs能否压缩http请求?

var compression = require('compression'); 

var app = express(); 

app.use(compression()); 
app.use('/',    require('./static')); 
app.use('/api/xxx',  require('./api/xxx')); 

当我在Safari的网络督察检查,一些文件,比如我的app.js确实压缩,你可以看到一个差异(尽管小)的文件大小:

enter image description here

但其他类似的API请求不是:

enter image description here

似乎有没有差异的大小,考虑到我的服务器根据请求简单地发送json,为什么传输的数据没有严重压缩?

回答

0

这是因为您需要设置压缩级别。

在这里阅读文档:https://github.com/expressjs/compression

矿设置为最大压缩,像这样:

// Compress content 
app.use(compression({ 
    level: 9, 
    memLevel: 9 
}));