0
J'ai regardé d'autres questions avec le même problème, mais je n'ai pas trouvé de solution. Mon manifest.json
:Impossible de lire la propriété 'onBeforeRequest' de undefined
{
"background": {
"scripts": [ "js/background.js" ],
},
"description": "...",
"icons": {
"128": "icons/128.png",
"16": "icons/16.png",
"48": "icons/48.png"
},
"manifest_version": 2,
"name": "Name it!",
"offline_enabled": false,
"permissions": [ "webRequest", "webRequestBlocking", "https://www.youtube.com/*" ],
"permissions": [ "https://www.youtube.com/*" ],
"version": "1.0"
}
et mon background.js
:
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
var idid = details.url;
var vid = idid.split("watch?v=");
var akk = vid[1];
if (akk.includes("&") && akk.includes("=")) {
akk = akk.split("&")[0];
}
var xhr = new XMLHttpRequest();
xhr.open("GET", "https://www.youtube.com/feeds/videos.xml?channel_id=xxx", false);
xhr.send();
var result = xhr.responseText;
if(result.includes(akk)) {
redirectUrl : "chrome-extension://"+window.location.hostname+"/html/block.html"
}
},
{urls: ["https://www.youtube.com/*"]},
["blocking"]);
J'obtiens cette erreur:
Uncaught TypeError: Cannot read property 'onBeforeRequest' of undefined
Quel pourrait être le problème?
Je suppose que vous avez défini un point d'arrêt dans le script de la page d'arrière-plan dans devtools? Si c'est le cas, placez-le sur une ligne à l'intérieur de l'écouteur pour éviter de [bug connu] (https://bugs.chromium.org/p/chromium/issues/detail?id=754976). Sinon, assurez-vous de recharger l'extension sur la page chrome: // extensions. – wOxxOm