我已经读过我应该将请求压缩到我的Node服务器,所以我使用npm来安装压缩模块,将它与require()一起添加到我的server.js,然后将其作为函数传递给app.use
之后我查看了网络标签,我想知道压缩在kb中节省了多少。所以我关闭了压缩,重新启动了我的服务器,它与打开压缩时的kb数量相同?
这是我的server.js
var express = require('express'),
app = express(),
path = require('path'),
apiRouter = require('./app/routes/api'),
mongoose = require('mongoose'),
compression = require('compression');
app.use(compression());
app.use(express.static('public'));
app.use('/api', apiRouter);
app.use('*', function(req, res) {
res.sendFile(path.join(__dirname + '/public/index.html'));
});
mongoose.connect('mongodb://localhost/triviaattack');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
//Connected to DB successfully.
});
app.listen(1337);
答案 0 :(得分:5)
除非客户端发送“Accept-Encoding:gzip”请求标头,否则压缩不起作用。您可以测试压缩here。
答案 1 :(得分:2)
打开和关闭压缩以进行测试时,请确保您在Chrome开发工具中进行了重新加载,否则您将获得“未经修改的”工具。未压缩的响应。
您的示例代码对我有用!