4

我制作了一个 Chrome 扩展程序,并正在使用 Firebase 对用户进行身份验证。我从https://www.gstatic.com/firebasejs/4.11.0/firebase.js下载了 Firebase.js ,希望将 firebase 代码添加到我的 chrome 扩展清单中。Firebase 身份验证发生在内容脚本中,因此它需要包含在“content_scripts”下的“js”中。

Manifest.json 内容脚本示例

相反,我在放置 firebase.js 时收到 UTF-8 错误。

错误:无法为内容脚本加载文件“js/lib/firebase.js”。它不是 UTF-8 编码的。无法加载清单。

我尝试在 Mac 上使用 TextEdit 将文件保存为 UTF-8 - 仍然不走运。

我究竟做错了什么?

4

1 回答 1

0

就我而言,问题源于缩小器/混淆器(例如 uglify)如何编码某些字符。我的开发版本运行良好,但是当我使用缩小版本时出现了这个 UTF8 错误。

无法为内容脚本加载文件“content-script.js”。它不是 UTF-8 编码的。

对我来说,解决方案是禁用 minification

这是一个可以接受的折衷方案,因为用户不会在每次页面加载时都从服务器下载代码。它仅在安装或更新扩展程序时下载一次。一点额外的 KB 不会伤害任何东西。

于 2019-04-30T19:23:34.650 回答