AngularJS ng-csp 指令
定義和用法
ng-csp
指令用于更改 AngularJS 的安全策略。
設置 ng-csp
指令后,AngularJS 將不會運行任何 eval 函數,也不會注入任何內聯樣式。
將 ng-csp
指令的值設置為 no-unsafe-eval
,將阻止 AngularJS 運行任何 eval 函數,但允許注入內聯樣式。
將 ng-csp
指令的值設置為 no-inline-style
,將阻止 AngularJS 注入任何內聯樣式,但允許 eval 函數。
為 Google Chrome 擴展或 Windows 應用開發應用程序時,需要使用 ng-csp
指令。
注意:ng-csp
指令不會影響 JavaScript,但它改變了 AngularJS 的工作方式,這意味著:你仍然可以編寫 eval 函數,它們將按你期望的方式執行,但 AngularJS 不會運行自己的 eval 函數。它使用一種兼容模式,這可能會使評估時間減慢高達30%。
實例
改變AngularJS在 "eval" 和內聯樣式方面的行為:
<body ng-app="" ng-csp> ...
語法
<element ng-csp="no-unsafe-eval | no-inline-style"></element>
參數
參數 | 描述 |
---|---|
|
值可以為空,意味著既不允許eval也不允許內聯樣式。 該值可以是所描述的兩個值之一。 該值可以是兩個值,用分號分隔,但這與空值具有相同的含義。 |