Ajax開發10條標準守則

費勁_奮進發表於2014-05-01

AJAX 是一種獨立於 Web 伺服器軟體的瀏覽器技術。AJAX 基於下列 Web 標準:JavaScript XML HTML CSS 在 AJAX 中使用的 Web 標準已被良好定義,並被所有的主流瀏覽器支援。AJAX 應用程式獨立於瀏覽器和平臺。Web 應用程式較桌面應用程式有諸多優勢;它們能夠涉及廣大的使用者,它們更易安裝及維護,也更易開發。

不過,因特網應用程式並不像傳統的桌面應用程式那樣完善且友好。 通過AJAX,因特網應用程式可以變得更完善,更友好。下面為大家介紹Ajax開發守則。

1.前、端後都要做好安全的把關工作

不能單靠前端做安全驗證工作,後端也必須有過濾機制,檢驗前方傳來的資料。由於Ajax也會接收後端傳送來的資料,對這些資料都要採不信任態度,必須加以檢查。

2.儘量以HTTP POST方法傳輸資料

使用GET方法容易讓有心人士得到資料,雖然POST並非萬無一失,但比起GET至少較為安全。

3.不要直接用eval函式喚起JSON物件

JSON是採用JavaScript物件實字的資料格式,從後端傳到Ajax程式時,必須採用eval函式將它從字串轉成物件,這時必須先行檢查資料中是否有非法字元,以免非法程式藉機啟用。

4.限制使用者可用的HTML語法

許多Ajax網站允許使用者在留言中使用HTML語法,而某些特定語法應該嚴格限制,例如<plaintext>或是<!- -這類語法,都會讓置於之後的程式碼失效。

5.禁止可留言的網頁頁面使用JavaScript語法

雖然乍看之下覺得不可思議,不過的確在一些部落格平臺上發生過,這讓XSS攻擊開了大門。

6.使用Ajax框架,必須注意安全性問題

由於駭客利用JavaScript進行攻擊手法日新月異,當網頁開發人員利用Ajax框架時,必須注意框架本身是否對某些特定手法具有防治行為。

7.讓使用者知道自己身處的狀況

當Ajax載入資料量大時,有時會讓使用者產生錯覺,不確定剛剛按下的按扭是否發生作用。因此開發人員必須設計適當的提示,讓使用者瞭解目前程式的執行狀況。

8.保持小量傳輸

Ajax的靈活性在於動態改變區域性資料量,因此小量傳輸資料才能達到最高效益。如果一大張資料表都要透過DOM的操作來改變,不如就由後端程式與資料庫來操作,效益更高。

9.注意易用性與內容的平衡

Ajax雖然為使用者帶來瀏覽時的易用性,不過如果將所有內容都透過Ajax來產生,會造成搜尋引擎無法索引資料的情況。因此與內容相關的部分,需謹慎使用Ajax。

10.執行優雅降級原則

網站如果並非全面性採用Ajax技術,而只是為了區域性增加互動性,這時必須考量不支援JavaScript的使用者,設法在不使用這些功能的前提下,讓他們還能正常地瀏覽網站。

相關文章