需要在响应标头中添加标头,其键和值为" Content-Encoding" as" gzip"

时间:2016-03-07 14:22:31

标签: node.js gruntjs gzip content-encoding

我正在尝试使用自定义标头运行示例应用程序但是当我尝试运行此应用程序时,它会将错误抛出为"内容编码错误"。我想在我的应用程序上添加此自定义标头以使用grunt-gzip压缩。任何人都可以告诉为什么会出现这个错误以及如何解决它?

var express = require(' express');    var app = express();

app.get('/', function(req, res){
  res.setHeader('Content-Encoding', 'gzip')
  res.send('hello world');
});

app.listen(3001)

2 个答案:

答案 0 :(得分:0)

响应标题只会告诉您的客户期望的响应类型。要实际压缩它,您需要告诉Express这样做。假设您使用的是Express 4+,则需要单独安装软件包:

npm install compression --save

在您的代码中:

var compress = require(" compression");

在app.get()之前,写下: app.use(压缩());

Express会立即压缩所有回复。

答案 1 :(得分:0)

代码的问题是您试图发送纯文本,并告诉浏览器期望gzip压缩的内容。

下面的代码对于使用gzip编码的启动很有帮助:

<input type="text" id="text1" onkeyup="valid()">
<input type="text" id="text2">