ExcelJS:Angular 应用程序中的“未捕获的 EvalError:'unsafe-eval' 不是以下内容中允许的脚本源”

Pra*_*tik 5 javascript content-security-policy exceljs angular

我已经在 IIS 服务器上部署了使用 ExcelJS 库的 Angular 应用程序。我当前的安全策略强制我返回 IIS Http 响应中的以下标头

内容安全策略: script-src 'self';img-src 'self'

使用此设置,角度应用程序不会加载并给出以下错误。

exceljs.js:87162 未捕获的 EvalError:拒绝将字符串计算为 JavaScript,因为“unsafe-eval”不是以下内容安全策略指令中允许的脚本源:“script-src 'self'”。

有什么方法可以覆盖 Http 响应安全策略。我尝试使用添加内容安全策略但它不起作用。

有人可以建议如何以严格的内容安全策略运行 ExcelJS 吗?

San*_*shK 2

使用以下步骤解决:

导入regenerator-runtime前先包含导入exceljs

import 'regenerator-runtime/runtime';
import { Workbook } from 'exceljs';
Run Code Online (Sandbox Code Playgroud)

第二次转到并包含路径tsconfig.json的裸版本exceljs"compileOnSave":false

"exceljs": [
        "node_modules/exceljs/dist/exceljs.bare.min.js"
]
Run Code Online (Sandbox Code Playgroud)