一、何謂AJAX
非同步JavaScript及XML(Asynchronous JavaScript and XML,AJAX),主要格式為XML但其它格式也能用,例如:Plain Text,JSON……等。2005年時為了解決在Web上面使用地圖時的緩慢問題,由Google Map團隊中的網路名人Jesse James Garrett提出此技術,目前用於提高網頁的互動性(interactivity),速度(speed),以及可用性(usability)。
二、AJAX的優點與缺點
優點:
1.減少頻寬的使用&提升使用者體驗:
比起過去的網頁透過重新載入整個頁面來達到更新的效果,AJAX允許重新載入部分頁面來達到更新的效果,因此大大提升了瀏覽的速度。
2.提高工作效率:
AJAX所提供的框架中很多都已經有自己的架構在,套用之後只需要在client端進行改寫就可以實現想要的功能,因此提高了開發人員的工作效率。
3.支援非同步處理:
client端在未收到server端的response之前,仍然可以繼續向下執行,等在收到response之後再去執行相應的操作,這正是提升網頁效能的最主要的原因。
缺點:
1.安全性:
隨著程式碼的增加,網頁面臨著越來越嚴重的威脅。
2.無法回上一頁:
比起過去的網頁要回到上一頁時,及回到上一個瀏覽器所儲存的靜態網頁即可達到此效果,AJAX因為是持續送出request不等待所以是動態網頁故瀏覽器無法儲存,因此喪失此功能。
3.瀏覽器之間的不相容性:
Ajax對於Javascript有很大的依賴性,因此在不同的瀏覽器上面的實現方式也是有所不同的(DAY21文章內JavaScript的優點與缺點中有提到)。
參考資料:
1.https://www.youtube.com/watch?v=XzOvUNFxg0Q&list=PLdSWxzxDhd3Hq9A2SQHOBoBW-F-6n--lj&index=2
2.https://codertw.com/%E5%89%8D%E7%AB%AF%E9%96%8B%E7%99%BC/386104/