這篇文章主要介紹“Ajax同步和異步的請求怎么實現(xiàn)”的相關(guān)知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Ajax同步和異步的請求怎么實現(xiàn)”文章能幫助大家解決問題。
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、小程序開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了吉隆免費建站歡迎大家使用!
同步Ajax請求是在收到響應(yīng)之前停止執(zhí)行請求的過程,而異步Ajax請求意味著腳本繼續(xù)該過程而不等待服務(wù)器回復(fù)。如果它到達,它將處理回復(fù)。
Ajax的原理很簡單,向服務(wù)器對象發(fā)送一個異步請求就是從服務(wù)器獲取數(shù)據(jù),然后使用javascript來操作DOM并更新頁面。這是最關(guān)鍵的一步,就是從服務(wù)器獲取請求的數(shù)據(jù)。
默認情況下,Ajax請求是異步的,但有時您需要同步發(fā)送請求。
Javascript示例:
var req = new XMLHttpRequest(); req.open("POST", "example.php”); // Asynchronous request req.send();
jQuery示例:
$.ajax({ type: "POST", url: "example.php", success: function(data){ //response script here } });
$.ajax() 返回 XMLHttpRequest。
讓我們看一下下面的示例,以同步加載數(shù)據(jù),這在請求處于活動狀態(tài)時完全阻塞了瀏覽器。
JavaScript 示例:
var req = new XMLHttpRequest(); req.open("POST", "example.php”, false); // synchronous request req.send();
jQuery 示例:
// Instantiate a requestvar sync_request = $.ajax({ url: "example.php", async: false, success: function(data){ //response script here } });
在這里,當您需要同步請求時,我們只需要傳遞“ async:false”。前面的示例為 open 中的最后一個參數(shù)設(shè)置了 true,而在本示例中,它設(shè)置為 false,因此請求是同步的。
Ajax給我們帶來了以下好處:
最大的一點是沒有頁面刷新,在頁面與服務(wù)器通信給用戶的體驗非常好。無需在每次請求中加載所有數(shù)據(jù)。
Ajax與服務(wù)器采用異步通信方式,不中斷用戶操作,具有更快速的響應(yīng)能力。
它減少了帶寬的使用,從而節(jié)省了空間和租金成本。
Ajax基于標準化和廣泛支持的技術(shù),無需下載插件或庫。
關(guān)于“Ajax同步和異步的請求怎么實現(xiàn)”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。