验证中的ExpressiveAnnotations错误消息

时间:2019-06-17 07:01:01

标签: javascript typescript asp.net-core expressiveannotations

在将ExpressiveAnnotations(expressive.annotations.validate.js)插入我的应用程序并触发输入进行验证后,浏览器显示一条错误消息(请参见下文)。我认为问题不是源于我的代码,而是配置问题。

我已经发现此行(在ExpressiveAnnotations内部)会导致问题:

ctxEval: function(exp, ctx) { // evaluates expression in the scope of context object
    return (new Function('expression', 'context', 'with(context){return eval(expression)}'))(exp, ctx); // function constructor used on purpose (a hack), for 'with' statement not to collide with strict mode, which
                                                                                                        // is applied to entire module scope (BTW 'use strict'; pragma intentionally not put to function constructor)
}

显示的错误消息:

[失败](16:14:32):EvalError:拒绝将字符串评估为JavaScript,因为以下内容安全策略指令中不允许'unsafe-eval'脚本源:“ script-src'self ''unsafe-inline'“。

1 个答案:

答案 0 :(得分:0)

为解决此问题,我将CSP设置为以下值:

"content_security_policy": "script-src 'self' 'unsafe-eval';