HTTP协议(Hyper Text Transfer Protocol)超文本传输协议,HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HTTP是一个无状态的协议,基于TCP协议。
协议分析Method
Safe(安全):不会修改服务器的数据的方法(GET、HEAD、OPTIONS)
Idempotent(幂等):同样的请求被执行一次与被执行多次的效果是一样的,服务器的状态也是一样的,所有Safe的方法都是Idempotent的(GET、HEAD、OPTIONS、PUT、DELETE)
状态码(一般用三位数表示)
RESTful API
它是一种API设计风格,REST-Representional State Transfer
(1)每一个URI代表一种资源
(2)客户端和服务器之间,传递这种资源的某种表现层
(3)客户端通过HTTP method,对服务器端资源进行 *** 作,实现“表现层状态转化”
常用请求头
常用响应头
强缓存
Expires,时间戳
Cache-Control
•可缓存性
•no-cache:协商缓存验证
no-store:不使用任何缓存
到期
max-age:单位是秒,存储的最大周期,相对于请求的时间
重新验证*重新加载
must-revalidate:一旦资源过期,在成功向原始服务器验证之前,不能使用
协商缓存
Etag/lf-None-Match:资源的特定版本的标识符,类似于指纹
0Last-Modified/If-Modified-Since:最后修改时间
cookie
场景分析
静态资源
登录
跨域解决方案
实战 AJAX之Fetch
XMLHttpRequet的升级版使用Promise
模块化设计,Response,
Request,Header对象
通过数据流处理对象,支持分块读取
标准库:HTTP、HTTPS
默认模块,无需安装其他依赖;功能有限,不是十分友好
常用的请求库:axios
支持浏览器、nodejs环境;丰富的拦截器
网络优化
稳定性
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)