如何解决Manifest v3 从外部 API 获取数据
我正在开发与 Manifest v3 反应的浏览器(Chrome、Firefox)扩展。 在我的应用程序中,我有一个搜索栏,根据用户输入的值显示建议的单词(就像搜索引擎一样)。 在 manifest v2 中,我曾经像这样加载这个脚本:
"content_security_policy": "script-src 'self' https://suggest.finditNowonline.com; object-src 'self'"
在 v3 中,这不再受支持,但我找不到如何仍然使我的代码工作的方法。 我在网上找到的最相关的资源是这个答案:Content Security Policy in Manifest V3 for Facebook Page Plugin
和此文档:https://www.chromium.org/Home/chromium-security/extension-content-script-fetches
但我无法理解如何从 background.js 页面实现我的脚本,因为每次用户在输入字段中输入内容时,它都需要动态获取 API。
useEffect(() => {
const fetchSuggestedWords = async () => {
try {
const res = await fetchJsonp(`${process.env.SUGGESTED_WORDS_URL}${searchValue}`)
const suggestedWordsArray = await res.json()
setSuggestedWords(suggestedWordsArray[1].slice(0,10))
return
} catch {
console.log('error fetching suggested results')
}
}
if (searchSuggestedWords) {
fetchSuggestedWords()
}
},[searchValue])
其中 searchValue
是在输入字段上触发 onChange 事件时的状态更新。
有关如何处理这种新格式的任何提示? 人们会建议现在不要切换到 Manifest v3 吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。