官术网_书友最值得收藏!

2.6 AngularJS技術(shù)

AngularJS誕生于2009年,由Misko Hevery等人創(chuàng)建,后被谷歌收購。它是一款優(yōu)秀的前端JavaScript框架,已經(jīng)被用于谷歌的多款產(chǎn)品中。AngularJS有著諸多特性,最核心的特性是MVC(Mode-View-Controller)、模塊化、自動化雙向數(shù)據(jù)綁定、語義化標簽和依賴注入等。

AngularJS是一個JavaScript框架,是一個以JavaScript編寫的庫。AngularJS通過指令擴展了HTML,且通過表達式綁定數(shù)據(jù)到HTML。AngularJS以一個JavaScript文件形式發(fā)布,可通過<script>標簽添加到網(wǎng)頁中。

1.AngularJS防止模板攻擊

AngularJS可以通過JavaScript框架把表達式放在花括號中嵌入頁面中。例如,表達式1+2={{1+2}}將會得到1+2=3。其中,括號中的表達式被執(zhí)行了,這就意味著如果服務器端允許用戶輸入的參數(shù)中帶有花括號,就可以用Angular表達式來進行XSS攻擊。所以對用戶的輸入需要做有效性驗證,避免攻擊者依據(jù)AngularJS語法的特征進行有針對性的攻擊。

2.AngularJS防止XSS攻擊

ng-bind-html指令會在運行時過濾一些不安全的標簽來防止XSS攻擊,提高安全性。但是會導致字符串中的某些標簽(如<button></button>,<input/>等)顯示不出來。

AngularJS中使用$sce來進行這類安全防護,程序員可以根據(jù)實際需要進行選擇。

主站蜘蛛池模板: 巴林右旗| 萝北县| 剑河县| 恭城| 宁都县| 依安县| 游戏| 颍上县| 潮州市| 尚志市| 江油市| 乃东县| 科技| 灌云县| 南昌县| 武冈市| 昌都县| 东城区| 阿尔山市| 定南县| 防城港市| 荔浦县| 乌恰县| 启东市| 长兴县| 遵义县| 德保县| 永靖县| 顺平县| 新津县| 衡东县| 静乐县| 佛坪县| 平乐县| 筠连县| 红桥区| 贵溪市| 德昌县| 惠州市| 万荣县| 镇原县|