我在NGinx服务器上有一个webapp.我gzip on在conf文件中设置,现在我正在尝试查看它是否有效.YSlow表示不是,但进行测试的6个网站中有5个表示确实如此.我怎样才能得到一个明确的答案,为什么结果有差异?
我正在使用 Axios 从 Web 服务器获取 JSON 响应。响应采用压缩的 gzip 格式。如何解压响应并获取 Json 数据。
我正在尝试使用 NodeJS/Express 提供压缩视图。
即使我正确配置了应用程序,也没有压缩的痕迹。仅压缩静态文件。
如果我在 Chrome 中访问视图,我找不到该字段Content-Encoding: gzip。
以下是我的 Express 应用程序的配置:
    app.set('port', process.env.PORT || 3000);
    app.set('views', __dirname + '/views');
    app.engine('html', ejs.renderFile);
    app.set('view engine', 'ejs');
    app.use(express.favicon());
    app.use(express.logger('dev'));
    app.use(express.bodyParser());
    app.use(expressValidator());
    app.use(express.methodOverride());
    app.use(express.staticCache());
    app.use(gzippo.staticGzip( path.join(__dirname, 'public') ,{maxAge:86400000} ));
    app.use(gzippo.compress());
    //app.use(express.compress());
    app.use(app.router);
请注意,我使用 gzippo 进行压缩。然而基本的压缩也express.compress()不起作用。
我使用压缩库来压缩我所有的快速响应。不幸的是,似乎没有任何响应被压缩。然而,我在客户端调用标头中指定了接受编码:“gzip”。这是代码:
正面:
export const api = ax.create({
  baseURL: "http://localhost:8000",
  timeout: 1000,
  withCredentials: true,
  headers: {
    'Accept-Encoding': 'gzip',
  }
});
const contact = () => {
    api.get("/contact")
    .then(res=> console.log("contact response", res))
    .catch(err=> console.log("contact err", err))
  }后退:
const app = require("express")();
const cors = require("cors");
const compression = require("compression")
app.use(cors({ credentials: true, origin: ["http://localhost:3000"] }));
app.use(compression());
app.get('/contact',  (req, res) => {
    res.status(200).json({hello: "world"})
  })在 Chrome 网络选项卡中,我没有内容编码:gzip。如何解决这个问题?