ajax
一、ajax定义
ajax是与服务器交换数据的技术,它在不重载全部页面的情况下,实现了对部分网页的更新。
ajax=异步JavaScript和XML(AsynchronousJavaScriptandXML)。
二、ajax的原理:
1、创建对象
兼容性问题:
Var xmlhttp;
if(window.XMLHttpRequest){
//IE7+ ,Firefox,Chrome,Opera,Safari浏览器执行代码
xmlhttp=new XMLHttpRequest();
}else{
//IE6,IE5浏览器执行代码
xmlhttp=new ActiveXObject(‘Microsotf.XMLHTTP’);
}
2、告诉浏览器要请求的地址及请求方式
xmlhttp.open(‘请求方式’ ,’urI(请求的地址)’,true)
第三个参数:true:异步;false:同步
例// xmlhttp.open('get','http://59.111.104.104:8086/weChat/applet/course/banner/list?number=3&page=5');
// xmlhttp.open('get','http://59.111.104.104:8086/weChat/applet/course/banner/list?number=3',true);
3、发送请求
xmlhttp.Send ()
4、后台验证信息,返回数据给前台
(1)Ajax状态有5种0-4 0:请求未初始化、1:服务器连接已建立、2:请求已接收、3:请求已处理、4: 请求已完成
(2)http的请求5种1xx(客户端问题)、 2xx (请求成功) 、3xx(重定项代码问题)、4xx(url问题)、5xx(服务器问题)
(3)xmlhttp.readyState==4 (ajax请求状态) && xmlhttp.status==200 (http请求状态)
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4 && xmlhttp.status= =200){
document .getElementByld( "myDiv").innerHTML =xmlhttp.responseText;
}
}
Json对象var json = {‘name’:’zs’;’age’:’18’]
Json字符串var json1 = ‘[“name”:”zs”;”age”:”18”]’
Json对象转化成json字符串JSON. Stringify()
Json字符串转化成json对象JSON.parse()
三、post、get请求
(1)get请求
xml.open(‘get’ ,’urI(请求的地址)’,true);
xml.send();
(2)post请求
xml.open(‘post’urI(请求的地址)’,true);
xml.send( srting);
区别:(1)与get相比,post更加安全
(2)数据传输格式不同,post将数据放在send(),get将数据添加在url后面
(3)post能向服务器发送大量数据,而get发送数据较少