Chrome 扩展将被阻止的站点转发到 html 页面,但仅当 link 直接写入搜索栏时
Chrome extension forwards blocked sites to html page, but only when the link is written directly in the search bar
我正在为一个项目做一个简单的 Chrome 扩展,但我遇到了一个奇怪的问题。
我在后台脚本中做了一个网站拦截器:
localStorage.setItem('blocked_sites', ["*://www.wikipedia.org/*", "*://www.change.org/*", "*://en.wikipedia.org/*"]);
urls = localStorage.getItem('blocked_sites').split(',');
chrome.webRequest.onBeforeRequest.addListener(
function(intercept) {
console.log(intercept.url);
localStorage.setItem('denied_access_url', intercept.url);
return {redirectUrl: chrome.extension.getURL("chatbot.html")};
},
{
urls,
types: ["main_frame", "sub_frame", "stylesheet", "script", "image", "object",
"xmlhttprequest", "other"]
},
["blocking"]
);
当我通过在搜索栏中输入 url 直接访问站点时,此拦截器起作用。该页面重定向到我的 html 文件正常。但是,如果我 google 搜索然后单击 link 或单击电子邮件中的 hyperlink,该站点将被阻止,但页面不会重定向到 'chatbot.html',该页面显示:
'blninlecioflbneanancablcknibdbja 被阻止
此页面已被 Chrome 屏蔽
ERR_BLOCKED_BY_CLIENT'
(随机字母为本地扩展文件夹的名称,由chrome生成)。终端说
"(index):7272 crbug/1173575,非 JS 模块文件已弃用。
(匿名)@(索引):7272"
然后点击字符串末尾的数字显示
'No resource with given URL found'
奇怪的是,当我在 background.js 控制台中打印出 url 并单击它时,重定向到 chatbot.html 有效。当我点击 word 文档中的 links 时它也有效(但同样,不是电子邮件中的 links!)。
我已经尝试研究这些错误,但没有找到太多。
为什么有时只能找到文件?
“您需要将文件添加到 manifest.json 中的 web_accessible_resources。我认为这是一个错误,但它一直都是这样工作的。–wOxxOm”
我正在为一个项目做一个简单的 Chrome 扩展,但我遇到了一个奇怪的问题。 我在后台脚本中做了一个网站拦截器:
localStorage.setItem('blocked_sites', ["*://www.wikipedia.org/*", "*://www.change.org/*", "*://en.wikipedia.org/*"]);
urls = localStorage.getItem('blocked_sites').split(',');
chrome.webRequest.onBeforeRequest.addListener(
function(intercept) {
console.log(intercept.url);
localStorage.setItem('denied_access_url', intercept.url);
return {redirectUrl: chrome.extension.getURL("chatbot.html")};
},
{
urls,
types: ["main_frame", "sub_frame", "stylesheet", "script", "image", "object",
"xmlhttprequest", "other"]
},
["blocking"]
);
当我通过在搜索栏中输入 url 直接访问站点时,此拦截器起作用。该页面重定向到我的 html 文件正常。但是,如果我 google 搜索然后单击 link 或单击电子邮件中的 hyperlink,该站点将被阻止,但页面不会重定向到 'chatbot.html',该页面显示:
'blninlecioflbneanancablcknibdbja 被阻止 此页面已被 Chrome 屏蔽 ERR_BLOCKED_BY_CLIENT' (随机字母为本地扩展文件夹的名称,由chrome生成)。终端说 "(index):7272 crbug/1173575,非 JS 模块文件已弃用。 (匿名)@(索引):7272" 然后点击字符串末尾的数字显示
'No resource with given URL found'
奇怪的是,当我在 background.js 控制台中打印出 url 并单击它时,重定向到 chatbot.html 有效。当我点击 word 文档中的 links 时它也有效(但同样,不是电子邮件中的 links!)。
我已经尝试研究这些错误,但没有找到太多。
为什么有时只能找到文件?
“您需要将文件添加到 manifest.json 中的 web_accessible_resources。我认为这是一个错误,但它一直都是这样工作的。–wOxxOm”