gpt4 book ai didi

javascript - 为什么 getBackgroundPage() 没有在 chrome.runtime 中为我定义?

转载 作者:行者123 更新时间:2023-11-30 08:00:13 25 4
gpt4 key购买 nike

我试图从我的内容脚本访问 chrome.runtime.getBackgroundPage() 但我得到:

Uncaught TypeError: chrome.runtime.getBackgroundPage is not a function(anonymous function) @ VM11844:1InjectedScript._evaluateOn @ VM11665:883InjectedScript._evaluateAndWrap @ VM11665:816InjectedScript.evaluateOnCallFrame @ VM11665:942window.onload @ run.js:101

这是我的 manifest.json 的样子:

{
"background": {
"scripts": ["background.js"],
"persistent": true
},
"content_scripts": [{
"matches": ["<all_urls>"],
"js": ["run.js"],
"run_at": "document_start"
}],
"description": "Hello world!",
"homepage_url": "https://tryprospect.com",
"icons": {
"16": "icons/16x16.png"
},
"manifest_version": 2,
"name": "Hello world",
"permissions": ["storage", "management"],
"version": "v0.1",
"web_accessible_resources": ["html/*"]
}

我错过了什么吗?也许是许可?

谢谢!

最佳答案

大多数 chrome.* API 不适用于内容脚本。它们只能从背景或事件页面、弹出窗口或您定义的其他扩展 View 中使用。

特别是您不能使用 chrome.runtime.getBackgroundPage(),因为扩展的窗口对象与内容脚本存在于不同的进程中。内容脚本与扩展的其余部分之间进行通信的唯一方法是通过消息传递或存储。

关于javascript - 为什么 getBackgroundPage() 没有在 chrome.runtime 中为我定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30008667/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com