【Node.js】zlib 模块

js 复制代码
const fs = require('fs')
const zlib = require('zlib')

const gzip = zlib.createGzip()

const readstream = fs.createReadStream('./avatar/1.txt')
const writestream = fs.createWriteStream('./avatar/2.txt')

// 在写入之前压缩文件
readstream
  .pipe(gzip)
  .pipe(writestream)

可以明显看到压缩之后文件变小。但是浏览器读取文件的时候,会出现乱码。

所以我们需要在响应头中加上 "Content-Encoding": "gzip" 解决乱码问题。

相关推荐
幸运小圣1 小时前
Buffer 新手入门【Node.js】
node.js·编辑器·vim
jj_ccwgw5 小时前
从 0 到 1 搭建 pnpm + Workspaces + Turborepo Monorepo 保姆级指南
前端·node.js
梦想平凡5 小时前
棋牌游戏技术实战(一):用 Node.js 实现房间消息队列、请求幂等与断线恢复
游戏·node.js
小天源6 小时前
GEO 品牌监测系统实战:基于 Node.js + Playwright 实现多平台采集与报告导出
人工智能·node.js·geo·品牌检测·ai诊断
damoluomu6 小时前
Directus 换掉 GPL 之后,Node.js CMS 到底怎么选?(一)
node.js
guslegend1 天前
脚手架入门:必要性、核心功能与执行原理
前端·架构·node.js·脚手架·前端工程化
HaipengYu2 天前
深度解密 OpenCode 2 插件加载机制:Dual-Version (V1/V2) 适配实战与官方文档的“隐形陷阱”
node.js
前端之虎陈随易2 天前
bm2,Node.js 与 Bun 项目部署新选择
node.js
梦帮科技3 天前
【3.0修订版】 RNS 代币架构:ERC20 五件套扩展与六钱包分配
数据结构·后端·算法·架构·node.js·区块链·php
niyongsheng4 天前
后端零改动,给若依换一套现代化前端
vue.js·开源·node.js