AJAX是什么?
2020/11/2 13:56:14 閱讀:2707
發布者:2707
AJAX的意思就是異步的JavaScript和XML。簡而言之,它是使用XMLHttpRequest對象與服務器端通信的腳本語言。它可以發送及接收各種格式的信息,包括JSON、XML、HTML和文本文件。AJAX最為吸引人的就是它的“異步”特性,AJAX可以無需刷新頁面而與服務器端進行通信。
Ajax請求的五個步驟:
1、建立xmlHttpRequest對象
if(window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
if(xmlHttp.overrideMimeType) {
xmlHttp.overrideMimeType("text/xml");
}
} else if(window.ActiveXobject) {
var activeName = ["MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];
for(var i = 0; i < activeName.length; i++) {
try {
xmlHttp = new ActiveXobject(activeName[i]);
break;
} catch(e) {}
}
}
if(!xmlHttp) {
alert("創建xmlhttprequest對象失敗");
} else {}
2、設置回調函數
xmlHttp.onreadystatechange= callback;
function callback(){}
3、使用OPEN方法與服務器建立連接 xmlHttp.open("get","ajax?name="+ name,true)
此步注意設置http的請求方式(post/get),如果是POST方式,注意設置請求頭信息xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
4、向服務器端發送數據
xmlHttp.send(null);如果是POST方式就不為空
5、在回調函數中針對不同的響應狀態進行處理
if(xmlHttp.readyState == 4){ //判斷交互是否成功
if(xmlHttp.status == 200){ //獲取服務器返回的數據 //獲取純文本數據
var responseText =xmlHttp.responseText;
document.getElementById("info").innerHTML = responseText;
}
}
擴展資料:
主流創建ajax對象的方法:
IE6以下版本瀏覽器創建ajax對象方法是:
Ajax優缺點
優點:
1、異步請求,不妨礙用戶瀏覽頁面或者其他操作。
2、局部刷新,無需重新刷新頁面。
3、界面與應用分離。有利于分工合作、減少非技術人員對頁面的修改造成的WEB應用程序錯誤、提高效率、也更加適用于現在的發布系統。
4、基于標準被廣泛支持。
5、前端和后端負載平衡。最大程度的減少冗余請求和響應對服務器造成的負擔,提升站點性能。
缺點:
1、back和History,對瀏覽器機制的破壞。
2、安全問題。易受到黑客攻擊。
3、對搜索引擎支持較弱。
4、不能很好支持移動設備。
5、違背URL和資源定位的初衷。