Ajax出來已經很久了,也已經出現了很多的快速開發Ajax網站的Ajax架構,項目中也多次運用了Ajax,但都沒有系統的歸納出來了。這裡就把相關知識點整理出來,不但便於學習,也便於以後再項目中方面尋找。(本文不牽涉Ajax實現細節)
一、Ajax是什麼?
Ajax(asynchronous Javascript and XML),or ajax,is a group of interrelated web development techniques used for creating interactive(互動式) web application of rich internet applications(豐富的互連網應用).
二、 優點(Advantages)
1.較少的請求
2.較小的頻寬
3.減少載入時間
4.更強的互動
5.更快的響應
6.不重新整理
三、缺點(Disadvantages)
1。一個Ajax請求往往沒有瀏覽器瀏覽曆史。
2。它禁用了網頁狀態書籤。
3。它很難被搜尋引擎抓取Ajax的內容。
4。AJAX請求不能跨網域
5。Ajax不容易測試。
四、Ajax的安全性
1.Ajax在Web Application中並沒有引入新的安全弱點。(Javascript+XML).
2.因此我們對Web Application還是需要Client-Side Checking(用戶端檢查)和減少伺服器的攻擊.
我們通常需要注意:
SQL Injections,
Javascript Injections.
Data validation,
Business Logic on the server,
Do not assume every request is real.
五、Ajax的使用
1.XmlHttpRequest(重要對象)
2.Remoting Scripting(Iframe技術)
六、Ajax Framework
1.Asp.net Ajax技術
2.JQuery架構
JQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development.
功能非常強大:包括:JQuery Core,Selectors,Attributes,Traversing,Manipulation,Css,Events,Ajax,Utilities,JQuery UI,Plugins等。
具體參見jQuery的文法:http://docs.jquery.com/
3.AjaxRequest
AJAXRequest是一個輕量級的AJAX應用程式開發架構,相容Firefox、IE、Opera、Safari,可以方便地進行一些AJAX中經常需要用到的操作,從而簡化開發步驟,減少重複代碼編寫量。
JAXRequest支援多個請求並發,因此可以在一個頁面中只使用一個AJAXRequest對象,或者同一類操作使用一個AJAXReqest,從而減少代碼的編寫。
用法參見:http://www.xujiwei.cn/works/ajaxrequest/ ,這裡可以下載 AjaxRequest Framework
4.類似於Ajaxrequest輕量級的架構,項目中提取
基於對象的JavaScript實現無重新整理頁面發送和擷取資料Ajax.js
5.另外還有Prototype,Extjs,Yahoo,YUI等很多包含Ajax的Javascript的架構。(Ajax請求本質是對XMLHttpRequest對象的OO封裝)
Best Regards,
Charles Chen
msn: gotosunny@msn.com