表达和压缩,找不到我做错了什么:-(
express and compression, can't find what I make wrong :-(
我找不到为什么我不能压缩我的内容。
我尝试了很多方法,但是当我在静态页面或基本本地内容 ( / ) 上使用 curl ( curl -I -H 'Accept-Encoding: gzip' http://localhost:8080/free.html ) 检查时,我找不到任何方法来压缩我的内容
我做错了什么?
这是我的代码:
var express = require('express');
var compression = require('compression');
var morgan = require('morgan');
var favicon = require('serve-favicon');
var app = express();
app.use(compression({
filter: function () { return true; }
}));
app.use(morgan('combined'));
app.use(favicon(__dirname + '/public/favicon.ico'));
app.use(express.static(__dirname + '/public'));
app.get('/', function(req, res) {
res.setHeader('Content-Type', 'text/plain');
res.end('Vous êtes à l\'accueil');
});
app.use(function(req, res){
res.send(404);
});
app.listen(8080);
谢谢
格雷戈尔
我还没有弄清楚为什么,但似乎如果阈值设置得不够低,它就不会对其进行编码。这是一个例子:
var express = require('express')
var app = express()
var compression = require('compression')
app.use(compression({ threshold: 6 }))
// app.use(express.static(__dirname + '/dist'))
app.all("/*", function(req, res, next) {
res.send('done')
})
var server = app.listen(8080)
文档声明 6
是默认值。当我测试这个时:
$ curl -i -H 'Accept-Encoding: gzip' http://localhost:8080
未设置Content-Encodingheader。当我将它设置为阈值 4 或更低时,它会以编码内容响应:
HTTP/1.1 200 OK
X-Powered-By: Express
Content-Type: text/html; charset=utf-8
Vary: Accept-Encoding
Content-Encoding: gzip // <——————————
Date: Mon, 06 Feb 2017 20:23:24 GMT
Connection: keep-alive
Transfer-Encoding: chunked
K??K??-⏎
我找不到为什么我不能压缩我的内容。 我尝试了很多方法,但是当我在静态页面或基本本地内容 ( / ) 上使用 curl ( curl -I -H 'Accept-Encoding: gzip' http://localhost:8080/free.html ) 检查时,我找不到任何方法来压缩我的内容
我做错了什么? 这是我的代码:
var express = require('express');
var compression = require('compression');
var morgan = require('morgan');
var favicon = require('serve-favicon');
var app = express();
app.use(compression({
filter: function () { return true; }
}));
app.use(morgan('combined'));
app.use(favicon(__dirname + '/public/favicon.ico'));
app.use(express.static(__dirname + '/public'));
app.get('/', function(req, res) {
res.setHeader('Content-Type', 'text/plain');
res.end('Vous êtes à l\'accueil');
});
app.use(function(req, res){
res.send(404);
});
app.listen(8080);
谢谢
格雷戈尔
我还没有弄清楚为什么,但似乎如果阈值设置得不够低,它就不会对其进行编码。这是一个例子:
var express = require('express')
var app = express()
var compression = require('compression')
app.use(compression({ threshold: 6 }))
// app.use(express.static(__dirname + '/dist'))
app.all("/*", function(req, res, next) {
res.send('done')
})
var server = app.listen(8080)
文档声明 6
是默认值。当我测试这个时:
$ curl -i -H 'Accept-Encoding: gzip' http://localhost:8080
未设置Content-Encodingheader。当我将它设置为阈值 4 或更低时,它会以编码内容响应:
HTTP/1.1 200 OK
X-Powered-By: Express
Content-Type: text/html; charset=utf-8
Vary: Accept-Encoding
Content-Encoding: gzip // <——————————
Date: Mon, 06 Feb 2017 20:23:24 GMT
Connection: keep-alive
Transfer-Encoding: chunked
K??K??-⏎