Javascript 即使使用了ng csp指令,也会执行eval
我已使用ng csp指令启用了ngCsp:Javascript 即使使用了ng csp指令,也会执行eval,javascript,angularjs,content-security-policy,Javascript,Angularjs,Content Security Policy,我已使用ng csp指令启用了ngCsp: <body ng-app="PM" ng-csp ng-cloak> 我不明白ng csp应该做什么吗 AngularJS使用函数(字符串)生成的函数作为速度优化。应用ngCsp指令将导致Angular使用CSP兼容模式。启用此模式时,AngularJS对所有表达式的求值速度将比非CSP模式慢30%,但不会引发安全冲突 这意味着使用ng csp将改变Angular的行为方式,因为它将手动处理事情,而不是采用基于eval的快捷方式。如果您
<body ng-app="PM" ng-csp ng-cloak>
我不明白ng csp应该做什么吗
AngularJS使用函数(字符串)
生成的函数作为速度优化。应用ngCsp指令将导致Angular使用CSP兼容模式。启用此模式时,AngularJS对所有表达式的求值速度将比非CSP模式慢30%,但不会引发安全冲突
这意味着使用ng csp
将改变Angular的行为方式,因为它将手动处理事情,而不是采用基于eval
的快捷方式。如果您在文档上使用CSP,这将非常有用
这并不是改变JavaScript工作方式的神奇方法。谢谢。我想它可能会安慰错误“不要使用eval”或类似的东西
$scope.searchform = {
searchExpression : "alert('hi')"
}
$scope.handleChange = function () {
eval($scope.searchform.searchExpression);
}
<input type="text" ng-model="searchform.searchExpression" ng-change="handleChange(searchform.searchExpression)">