Ajax基础
1.什么是Ajax
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML),是一种用于创建快速动态网页的技术,可以在不刷新整个浏览器页面的情况下,通过与服务器进行少量数据交换,对网页的某一部分进行更新。
2.Ajax的优缺点
AJAX的优点
最大的优点:页面局部刷新
ajax的缺点:
1、ajax不支持浏览器back按钮(要实现ajax下的前后退功能成本较大)。
2、安全问题: AJAX暴露了与服务器交互的细节。
3、对搜索引擎的支持比较弱。
4、破坏了程序的异常机制。
3.原生js ajax请求有几个步骤?分别是什么
第一步:创建XMLHttpRuquest对象;
第二步:注册回调方法
第三步:设置和服务器交互的相应参数
第四步:设置向服务器端发送的数据,启动和服务器端的交互
第五步:判断和服务器端的交互是否完成,还要判断服务器端是否返回正确的数据
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>02.XMLHttpRequest兼容性问题</title>
</head>
<body>
<h2>AJAX</h2>
<button type="button" onclick="loadXMLDoc()">请求数据</button>
<div id="myDiv"></div>
<script>
function loadXMLDoc() {
var xmlhttp;
if(XMLHttpRequest){
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else{
// code for IE6, IE5
xmlhttp=new ActiveXObject('Microsoft.XMLHTTP');
}
xmlhttp.open('GET','get.asp?t='+Math.random(),true);//true异步通信
// xmlhttp.open('POST','get.asp',true);
xmlhttp.setRequestHeader("content-Type","applicaion/x-www-form-urlencoded");//设置http头信息
xmlhttp.onreadystatechange=function () {
if(xmlhttp.readyState==4&&xmlhttp.status==200)//请求完成并且成功返回
{
document.getElementById('myDiv').innerHTML=xmlhttp.responseText;
//xmlhttp.responseText没有输出
}
};
xmlhttp.send();
}
</script>
</body>
</html>
4.AJAX的几种请求方式?以及他们的优缺点?
• 常见的请求方式有:get请求和post请求
• get一般用来进行查询操作,url地址有长度限制,请求的参数都暴露在url地址当中,如果传递中文参数,需要自己进行编码操作,安全性较低。
• post请求方式主要用来提交数据,没有数据长度的限制,提交的数据内容存在于http请求体中,数据不会暴漏在url地址中。
• post请求方式相对get请求方式来说要安全一些,但是速度慢