摘要:并且可以使用獲取元素的,來獲取的元素,例如修改后的如下所示,新增內(nèi)容和注釋如
可以如何發(fā)送請(qǐng)求
用可以發(fā)請(qǐng)求,但是會(huì)刷新頁(yè)面或新開頁(yè)面
用只可以發(fā) get 請(qǐng)求,但是也會(huì)刷新頁(yè)面或新開頁(yè)面
用只可以發(fā) get 請(qǐng)求,但是只能以圖片的形式展示
用只可以發(fā) get 請(qǐng)求,但是只能以 CSS、favicon 的形式展示
用只可以發(fā) get 請(qǐng)求,但是只能以腳本的形式運(yùn)行
?有沒有什么方式可以實(shí)現(xiàn):get、post、put、delete 請(qǐng)求都行,想以什么形式展示就以什么形式展示?
ajaxAsynchronous Javascript And XML
異步 Javascript 和 XML
需要滿足下面三個(gè)條件,可以稱之為 ajax:
使用 XMLHttpRequest 發(fā)請(qǐng)求
服務(wù)器返回 XML 格式的字符串
JS 解析 XML,并更新局部頁(yè)面
不過隨著技術(shù)發(fā)展,XML 越來越不常用,經(jīng)常使用 JSON 代替 XML
version1.0我們嘗試做一個(gè)按鈕,點(diǎn)擊向服務(wù)器發(fā)送一個(gè)請(qǐng)求
html :
ajax_html
main.js :
myButton.addEventListener=("click",function(e){ var request= new XMLHttpRequest(); //新建請(qǐng)求 request.onreadystatuschange=function(){ //當(dāng)請(qǐng)求的狀態(tài)有變化時(shí),打印出狀態(tài)碼 console.log(request.readyStatus); } request.open("GET","/xxx"); //初始化,GET 方法,/xxx 路徑 request.send(); //發(fā)送請(qǐng)求 })
后端代碼 :
}else if(path==="/xxx"){ response.statusCode = 200 response.setHeader("Content-Type", "text/xml;charset=utf-8") response.write(` //xml`) response.end() } Tove Jani Reminder Don"t forget me this weekend!
效果 :
當(dāng)點(diǎn)擊 點(diǎn)我 按鈕時(shí),首先,新建一個(gè)XMLHttpRequest請(qǐng)求;其次,使用 GET 方法請(qǐng)求到 /xxx;最后,發(fā)送請(qǐng)求。
當(dāng)服務(wù)器收到請(qǐng)求了 /xxx 路徑,然后,就返回了一串格式符合 XML 的字符串
并且,當(dāng)請(qǐng)求和響應(yīng)進(jìn)行到各個(gè)狀態(tài)時(shí),都會(huì)打印出它的狀態(tài)碼
(狀態(tài)碼請(qǐng)參考:https://developer.mozilla.org...)
除了可以獲取狀態(tài)碼、在瀏覽器控制臺(tái)獲取服務(wù)器返回的XML字符串外,還可以將XML字符串轉(zhuǎn)換為XML。
并且可以使用DOM獲取元素的API,來獲取XML的元素,例如getElementByTagNames...
修改后的 main.js 如下所示,新增內(nèi)容和注釋如
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/97804.html
摘要:之所以不能跨域其實(shí)是因?yàn)槭艿酵床呗缘南拗疲荒茏屗L問同源下的數(shù)據(jù),不能訪問不同源下的數(shù)據(jù)同源策略每個(gè)網(wǎng)站只能讀取同一來源的數(shù)據(jù),這里的同一來源指的是主機(jī)名域名協(xié)議和端口號(hào)的組合。 一、Ajax的概念 Ajax是一種技術(shù)方案,但并不是一種新技術(shù)。它依賴的是現(xiàn)有的CSS/HTML/Javascript,而其中最核心的依賴是瀏覽器提供的XMLHttpRequest對(duì)象,是這個(gè)對(duì)象使得瀏...
摘要:在接收響應(yīng)期間持續(xù)不斷地觸發(fā)。在請(qǐng)求發(fā)生錯(cuò)誤時(shí)觸發(fā)。在通信完成或者觸發(fā)或事件后觸發(fā)。已經(jīng)接收到部分響應(yīng)數(shù)據(jù)?;跇?biāo)準(zhǔn)被廣泛支持。破壞程序的異常處理機(jī)制。 原文(我的GitHub):https://github.com/liangfengbo/frontend-ability/issues/1 學(xué)習(xí)大綱 理解Ajax的工作原理 Ajax核心-XMLHttpRequest對(duì)象 封裝Aja...
摘要:需要注意的是,并不是的替代品,兩者各自有其適應(yīng)的場(chǎng)景。但為了方便交流,我們通常將獲取資源的一方稱為客戶端主要的工具是瀏覽器,而將派發(fā)資源的一方稱為服務(wù)端又稱為服務(wù)器。它可以幫助我們?yōu)橹蟾拍罴?xì)節(jié)的學(xué)習(xí)打下良好基礎(chǔ)。 再也不學(xué)AJAX了是一個(gè)與AJAX主題相關(guān)的文章系列,包含以下三個(gè)部分的內(nèi)容: AJAX概述:主要回答AJAX是什么這個(gè)問題; 使用AJAX:介紹如何通過JavaSc...
摘要:基于標(biāo)準(zhǔn)被廣泛支持。這樣的類最初是在中作為一個(gè)名為的對(duì)象引入的。請(qǐng)求還沒有被發(fā)送。當(dāng)為,這個(gè)屬性返回目前已經(jīng)接收的響應(yīng)部分。由服務(wù)器返回的狀態(tài)代碼,如表示成功,而表示錯(cuò)誤。方法取消當(dāng)前響應(yīng),關(guān)閉連接并且結(jié)束任何未決的網(wǎng)絡(luò)活動(dòng)。 前言 總括: 本文講解了ajax的歷史,工作原理以及優(yōu)缺點(diǎn),對(duì)XMLHttpRequest對(duì)象進(jìn)行了詳細(xì)的講解,并使用原生js實(shí)現(xiàn)了一個(gè)ajax對(duì)象以方便日常開...
摘要:前端基礎(chǔ)技術(shù)下你要明白是什么,怎么使用,程序是將信息放入公共的服務(wù)器,讓所有網(wǎng)絡(luò)用戶可以通過瀏覽器進(jìn)行訪問。獲取字符串形式的響應(yīng)數(shù)據(jù),獲取形式的響應(yīng)數(shù)據(jù)。基礎(chǔ)回顧原理是借助標(biāo)簽發(fā)送跨域請(qǐng)求的技巧。 Web前端-Ajax基礎(chǔ)技術(shù)(下) 你要明白ajax是什么,怎么使用? ajax,web程序是將信息放入公共的服務(wù)器,讓所有網(wǎng)絡(luò)用戶可以通過瀏覽器進(jìn)行訪問。 瀏覽器發(fā)送請(qǐng)求,獲取服務(wù)器的數(shù)據(jù):...
摘要:是一款緩存插件,可以為方法擴(kuò)展緩存功能。緩存清理插件本身會(huì)自動(dòng)清理過期緩存對(duì)于不想繼續(xù)使用緩存的接口可以為方法傳入清理當(dāng)前接口的緩存并返回最新數(shù)據(jù)也可以調(diào)用清理所有插件產(chǎn)生的緩存。 原文鏈接 AJAX-Cache是什么 Ajax是前端開發(fā)必不可少的數(shù)據(jù)獲取手段,在頻繁的異步請(qǐng)求業(yè)務(wù)中,我們往往需要利用緩存提升界面響應(yīng)速度,減少網(wǎng)絡(luò)資源占用。AJAX-Cache是一款jQuery緩存插件...
閱讀 1995·2021-11-22 19:20
閱讀 2641·2021-11-22 13:54
閱讀 1970·2021-09-04 16:40
閱讀 1827·2021-08-13 11:54
閱讀 2670·2019-08-30 15:55
閱讀 3468·2019-08-29 13:51
閱讀 531·2019-08-29 11:09
閱讀 3010·2019-08-26 14:06