HTTP状态码
1 信息,服务器收到请求,需要请求这继续执行操作
2 成功,操作被成功接受并处理。
3 重定向,需要进一步的操作完成请求
4 客户端错误,请求包含语法错误或无法完成请求
5 服务端错误
【常见状态码】**
- 204 No Content
- 206 部分内容
- 301 永久重定向
- 304 未修改,返回缓存资源
- 304 临时重定向
- 400 Bad Request客户端错误
- 401 Unauthorized 请求要求用户的身份认证
- 403 Fobidden 拒绝访问
- 500 服务端错误
- 502 Bad Gateway
-
Option请求
作用:是预检请求,用于检测服务器支持的HTTP方法,是否允许跨域。为了防止浪费带宽。
对象:非简单请求 非幂等请求方法:PUT \DELETE\CONNECT\PATCH
- 人为设置了对CORS的安全首部字段集合之外的首部字段
- Accept\Accept-Language\Content-Language
- Content-type不属于下面之一
HTTPS的加密过程
初级:HTTPS的加密过程
中级:TLS怎么预防安全攻击
高阶:CA证书,如何保证证书没有被伪造过
HTTP2优、缺点
【优点】
https已经解决了通信安全的问题,http2主要是针对影响网络速度的两个关键因素是“带宽”和“延迟”,HTTP/2 的头部压缩、多路复用、流优先级、服务器推送等手段其实都是针对这两个要点。
【缺点】
1、在移动网络中发生 IP 地址切换的时候,下层的 TCP 必须重新建连,要再次“握手”,经历“慢启动”,而且之前连接里积累的 HPACK 字典也都消失了,必须重头开始计算,导致带宽浪费和时延。
2、TCP 的队头阻塞并没有彻底解决 TCP 为了保证可靠传输,有一个“超时重传”机制,丢失的包必须等待重传确认
3、多路复用导致服务器压力上升,多路复用没有限制同时请求数。请求的平均数量与往常相同,但实际会有许多请求的短暂爆发,导致瞬时 QPS 暴增
4、多路复用容易 Timeout 大批量的请求同时发送,由于 HTTP2 连接内存在多个并行的流,而网络带宽和服务器资源有限,每个流的资源会被稀释,虽然它们开始时间相差更短,但却都可能超时。