如何阻止 GMAILS Chrome 扩展中的图像加载?
How to Block Image Loading in GMAILS Chrome Extension?
在我的简单 gmail chrome 扩展中 - 我想防止在已发送的邮件中加载图像。
当我包含
时,chrome.webRequest.onBeforeRequest.addListener
内部正在运行
urls: [ "*://*.googleusercontent.com/*" ]
在 urls 数组中。但这将触发我只想为此模式触发的所有图像 "*://*/#https://mysite/*",
但它根本没有触发 - 如果我包含 googleusercontent url 它正在使用这种格式的 details.url -
https://ci6.googleusercontent.com/proxy/IB4W2KvisZjL2rgC....#https://mysite/*
清单
"permissions": [
"webRequest",
"webRequestBlocking",
"*://*.googleusercontent.com/*",
"*://*/#https://track1/*",
"*://*.googleusercontent.com/*/://track1/*"
],
并且在后台脚本中
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
console.log(details);
}, {
urls: [
"*://*/#https://track1/*",
]
}, ['blocking']
);
我认为问题出在模式匹配上,但我无法理解哪种才是正确的模式
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
// Here inside details.url - you see each image is in format https://googlecontent
console.log(details);
}, {
urls: [
"*://*/#https://track1/*",
]
}, ['blocking']
);
如上所述 details.url - 你会看到每张图片的格式都是 https://googlecontent
所以你需要在 urls
数组中包含这个模式。
现在怎么抢需要urllink是
if (details.url.includes('<include link string here>') || details.url.includes('<other link here>')) {
if (some condition to stop image load met) cancel = true;
}
在我的简单 gmail chrome 扩展中 - 我想防止在已发送的邮件中加载图像。
当我包含
时,chrome.webRequest.onBeforeRequest.addListener
内部正在运行
urls: [ "*://*.googleusercontent.com/*" ]
在 urls 数组中。但这将触发我只想为此模式触发的所有图像 "*://*/#https://mysite/*",
但它根本没有触发 - 如果我包含 googleusercontent url 它正在使用这种格式的 details.url -
https://ci6.googleusercontent.com/proxy/IB4W2KvisZjL2rgC....#https://mysite/*
清单
"permissions": [
"webRequest",
"webRequestBlocking",
"*://*.googleusercontent.com/*",
"*://*/#https://track1/*",
"*://*.googleusercontent.com/*/://track1/*"
],
并且在后台脚本中
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
console.log(details);
}, {
urls: [
"*://*/#https://track1/*",
]
}, ['blocking']
);
我认为问题出在模式匹配上,但我无法理解哪种才是正确的模式
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
// Here inside details.url - you see each image is in format https://googlecontent
console.log(details);
}, {
urls: [
"*://*/#https://track1/*",
]
}, ['blocking']
);
如上所述 details.url - 你会看到每张图片的格式都是 https://googlecontent
所以你需要在 urls
数组中包含这个模式。
现在怎么抢需要urllink是
if (details.url.includes('<include link string here>') || details.url.includes('<other link here>')) {
if (some condition to stop image load met) cancel = true;
}