文章目录
什么是 Stream流
什么是流?Node.js中为什么要有流这个概念?
流指的是数据流,指的是数据分片传输.
数据可以实现非阻塞.
典型的gulp就是流式操作
案例(打包压缩包)
流程
- 1,读取文件
const fs=require(‘fs’)//引入模块
const itext=fs.createReadStream(’./xx.text’)//读出数据
- 2.创建压缩包
const zlib=require(‘zlib’)//压缩包模块
const czip=zlib.createGzip()//创建一个空压缩包
-
3.将读取的数据流写入压缩包
-
const outp=fs.createWriteStream(’./xx.text.gz’)//gz为压缩包格式
-
4.输出压缩包
-
itext.pipe(czip).pipe(outp)
第三方模块
一般第三方模块都是从npmjs.com网站获取;也有中文网
http模块
爬虫
- 去某一个网站爬取一段数据 ->数据清洗 ->后端服务器 -> 发送前端 ->渲染数据
- 不是所有网站都可以爬取
- 有爬虫也有反爬虫
- 爬虫:后端渲染的网站
后端服务器的两种类型
1.web服务器[静态服务器]
2.api服务器[暴露接口]
- 请求头部报文
- general 请求基本信息
- response Headers 响应头
- request Headers 请求头
- 携带参数
- query string paramters get请求
- form data post 请求
event 模块
Node.js中 事件的发布+事件的订阅 表示一个任务的执行
后端 api 服务器
解决跨域的问题
- 设置请求头(res.setHeader(‘Access-Control-Allow-Origin’, ‘*’))
- 使用中间件,回调函数我们称之为中间件,中间件具有特定功能的一个函数
- 使用第三方包 Cros
反向代理的基本原理
后端讲帮助前端请求数据,在讲数据发送给我们自己前端