1、异步请求的方法:iframe、script、XMLHttpRequest、comet(服务器端发起)
2、使用XHR发起POST请求
//1 创建XHR对象
var xhr = function (){
if(window.ActiveXObject){
return new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
return new XMLHttpRequest();
}
}
//2 监听XHR对象的状态改变
xhr.onreadystatechange = function(){
if(xhr.readyState===4){
if(xhr.status===200){
document.body.innerHTML = xhr.responseText; //XHR对象获得的响应消息主体--HTTP响应的文本内容
}else {
alert('响应完成但存在问题')
}
}
}
// 打开到Web服务器的连接
3. xhr.open('POST', 'xx.php', true);
3.5 xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
4 xhr.send( 'k=v&k=v&k=v' );
3、JSON--字符串数据格式
1. PHP: 把JSON字符串解析为PHP数组 $arr = json_decode($json);
3.2 PHP: 把PHP数组转换为JSON字符串 $json = json_encode($arr);
3.3 JS: 把JSON字符串解析为JS对象 var obj = JSON.parse(jsonString);
4. JS: 把JS对象转换为JSON字符串 var jsonString = JSON.stringify(obj);