onreadystatechange事件
- onload事件 : 一次请求, 只会执行一次
2. onreadystatechange : 一次请求,会执行多次
* 执行时机: (面试点)xhr请求状态变化
0. 请求未初始化
1. 服务器已连接
2. 请求已接收
3. 服务器处理中
4. 服务器已响应
get请求与post请求区别
1.传参方式不同
get:直接在url后面拼接
post: 请求体中发送
2.传参速度不同
get:传输速度快
post: 传输速度慢
3.数据大小不同
get:有大小限制。不同的浏览器大小有限制
post:没有限制
*一般有文件上传的的都是post
4.安全性不同
get: 安全性低
post:安全性高
*登录注册一般都是post
ajax工作原理
1.http网络协议:规定网络数据传输的格式
2.http组成部分:请求报文 + 响应报文
2.1 浏览器发给服务器的格式:请求报文
2.2 服务器响应给浏览器的格式:响应报文
3.请求报文
(1)请求行:请求方式 和请求地址
(2)请求头:浏览器告诉服务器我发给你的数据是什么格式(普通字符串、json、文件二进制)
(3)请求体:请求参数
4.响应报文
(1)相应行:响应状态码
2xx:请求ok
200:请求成功
204:一般出现在post请求,表示数据继续传输
3xx:重定向(服务器主动修改浏览器网址)
302:服务器端重定向
4xx:前端出现问题
404:url错误
400:常见于参数错误
403:没有权限(没有登录)
5xx:服务器问题
500:服务器内部错误
(2)响应头:服务器告诉浏览器我发给你的数据是什么格式
(3)响应体:服务器响应的数据