什么是WEB应用
浏览器访问服务形式称为WEB应用
(初期:通过浏览器访问应用方式称为WEB应用)
页面:资源的容器
服务端(程序):JAVA PHP node
浏览器里有渲染引擎: 会去读html 另一部分读CSS 解析完成后生成一棵树,最后交给浏览器渲染出来 最后HTML CSS加载一起就渲染出来 页面,JS是一个解析器 解析我们写的代码。
客户端与服务器两端进行通信(HTTP协议)
HTTP是一个属于应用层的面象对象的协议。
三次握手四次挥手
TCP协议、UDP协议 都属于传输层
TCP更加可靠、TCP连接(三次握手) TCP断开连接(四次挥手)
SYN:同步位 SYN=1 l连接请求
ACK:确认位 ACK=1确认有效 ACK=0确认无效
ack:确认号 对方发送的序号+1
seq:序号(随机)
客户端 A 服务端B(工作)
TCP连接(三次握手)
1、A主动请求——》B (A的SYN=1,seq=x)
2、B——》A(B的SYN=1,ACK=1 ack=x+1 seq=Y)
3、A——》B(ACK=1,ack=Y+1 seq=x+1)
AB可以进行数据传送
TCP断开连接(四次挥手)
FIN=1 断开连接并且客户端会停止向服务端发数据
1、A主动发起关闭请求——》B (A FIN=1 seq=u )
2、B——》A(B ACK=1,ack=u+1 seq=v) 1、2步骤称为半关闭状态 这个时候B还可以向客户端发数据
3、B——》A (B FIN=1 ACK=1 seq=w,ack=u+1)
4、A——》B (ACK=1,ack=w+1,seq=u+1)
等待一个时间 服务器接收 关闭
请求方式GET于POST区别
请求为 GET,请求的参数保存在请求行的 URL 中。即使是没有数据也必须有空行。
GET 路由 req.query
POST 类型的请求,参数是保存在请求体中。
POST路由 req.body
cookie 传统储存方式 最大特点 每次请求会自动携带 如果把数据存入cookie下次没有发送数据每次请求检查浏览器cookie里面的东西会自动添加。
npm包管理 (Node package Manage) 配置
包是模块的集合
初始化包 npm init -f 会生成一个初始化包 f-格式化
1、修改淘宝源:npm config set registry [https://registry.npm.taobao.org](https://registry.npm.taobao.org/)
2、创建一个工程目录 myapp,并进入目录
3、项目初始化:npx express-generator
4、安装依赖:npm install
5、启动 npm start
6、使用 [http://localhost:3000](http://localhost:3000/) 访问,查看访问页面