我有一个API密钥和我的扩展需要的机密,我将它们存储在自己格式化的文件中。在WebExtension中调用背景和内容脚本中的API密钥
key.js
var APP_KEY = 'App Key Goes Here';
var APP_SEC = 'App Secret Goes Here';
的manifest.json
// manifest.json
{
"manifest_version": 2,
"name": "Trakt for IMDb",
"version": "0.1a",
"background": {
"scripts": [
"js/key.js",
"js/background.js"]
},
"content_scripts": [
{
"js": [
"js/key.js",
"js/main.js"
]
}
]
}
在弹出的页面我只能引用此文件中像<script type="text/javascript" src="../js/key.js"></script>
并调用2个变量,但我不能工作了如何引用它,以便我的背景和内容脚本也可以访问它们。
我试图引用key.js
文件在我manifest.json
文件如下
"background": {
"scripts": [
"js/key.js",
"js/background.js"
]
}
但是,这并不工作。我发现了一个APP_KEY is not defined
main.js
console.log('Content: ' + APP_KEY);
有没有办法去尝试做我在做什么?
请编辑您的问题,以包含**完整** [mcve]。在'background'键中定义的所有脚本[在相同的上下文中运行](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Specifying_background_scripts)。因此,* key.js *中定义的“APP_KEY”和“APP_SEC”可用于* background.js *中的代码。 [续...] – Makyen
[续]:如果你只是在谈论从那里获取信息到内容脚本,那么你将不得不[把它作为消息传递](https://developer.mozilla.org/ en-US/Add-ons/WebExtensions/Content_scripts#Communicating_with_background_scripts)或内容脚本如何启动。具体取决于你的代码。因此,我们需要一个[mcve]。 – Makyen
@makyen谢谢我试着添加一些更多的信息。有任何想法吗?我看到你已经提到过内容脚本是如何启动的? – dpDesignz