这个玩意能不能压缩后就保存在本地,如果需要改动就更新文件?这样子就不用每次返回的时候都消耗CPU了。
如果可以的话具体怎么操作?express
这个玩意能不能压缩后就保存在本地,如果需要改动就更新文件?这样子就不用每次返回的时候都消耗CPU了。
如果可以的话具体怎么操作?express
var zlib = require('zlib'),
fs = require('fs'),
assert = require('assert'),
src = process.argv[2];
assert.notEqual(src, '', 'file name can not be null');
var dst = src + '.gz';
fs.createReadStream(src).pipe(zlib.createGzip()).pipe(fs.createWriteStream(dst));
上面是压缩一个文件的代码,你可以用 fs 模块的 readdir() 获取目录下的所有文件信息,然后逐一压缩。
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答2.6k 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答872 阅读✓ 已解决
6 回答1k 阅读
完全可以这样做,先调用 node 原生 zlib 模块将静态资源压缩并缓存起来,响应时直接返回即可。
具体可参考官方文档。http://nodejs.cn/api/zlib.html