原生Ajax过程
步骤
1 var = xhr = new XMLHttpRequest() //创建一个ajax对象,IE6不支持
2 xhr.open(‘get’, ‘ 后端地址‘, true)
参数:1打开方式,get或者post
2后端地址
3是否异步
//数据名称和数据值使用 =连接,有多个则用&符号连接,get方式传送数据有大小限制,很具不同浏览器限制不同
//当后续diamante要用到前面传过来的数据时,用同步,否则异步
3 xhr.send() //提交,发送请求数据
//以上是三部是数据的请求发送,以下是数据的获取
4 xhr.onreadystatechange = function{
If(xhr.status == 200){
//要做的事情
}else{
Alert(‘出错了’); //返回错误信息
}
//xhr.reponseText:请求返回的内容都被存放到这个属性里面,调动这个属性得到返回的内容,里面的东西都是string格式
//xhr.status ==200表示成功
基本流程完毕
JSON.stringify:把一个对象转换成字符串
JSON.prase:把字符串转换成相应对象(数组/json)
get方式传输数据
1缓存问题,在url?后面连接一个随机数或者时间戳就可以
2中文乱码,编码encodeURL
post方式
1数据放在send()里面作为参数传递
2要设置请求头xhr.setRequestHeader(‘context-type’, ‘类型’)
3post方式不缓存
4无需编码