拒绝在 pdfjs 中将 chrome 扩展中的字符串评估为 Javascript

Refused to evaluate a string as Javascript in chrome extension, in pdfjs

我正在开发一个使用 PDFJS 的 chrome 扩展,但 PDFJS 最新版本有一些 javascript 将 JS 作为字符串返回

Function("return this")()

这在 chrome 扩展中是不允许的。所以它给出以下错误

Uncaught EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self'

那么,我如何在 chrome 扩展中捆绑 pdfjs 文件来解决这个问题?

通过向 manifest.json 中的 content_security_policy 添加 'unsafe-eval' 选项解决了该问题。

实际上,问题出在 PDFJS 使用的库中。使用版本 2.1.266 应该可以解决问题。

这里有一个关于这个问题和其他解决方法的更详细的线程:https://github.com/mozilla/pdf.js/issues/11036