0
如果URL位於黑名單中,我正在構建重定向到google.com的擴展程序。 我將黑名單存儲在本地文件「list.txt」中,並使用XMLHttpRequest來檢索URL列表。 我遇到的問題是,chrome.webRequest.onBeforeRequest只有在URL是列表中的最後一個時纔會重定向。 這裏是我的代碼:chrome.webRequest.onBeforeRequest只重定向最後一個網址
var list = ["something.something/something"];
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
list = xhr.responseText.split(/\n/);
abc();
}
}
xhr.open("GET", chrome.extension.getURL('text/list.txt'), true);
xhr.send(null);
function abc() {
chrome.webRequest.onBeforeRequest.addListener(
function (details) {
return {redirectUrl: "https://google.com"};
},
{urls: list, types: []},
["blocking"]);
}
文件 「LIST.TXT」 是:
*://*.domain1.com/*
*://*.domain2.com/*
*://*.domain3.com/*
*://*.domain4.com/*
如果URL domain4.com只是重定向。
請幫忙。
注意,我宣佈
var list = ["something.something/something"];
因爲chrome.webRequest.onBeforeRequest將每個URL重定向如果列表是空的。
那,還是'.split(/ \ r?\ n /)' – Xan
Xan's更好。編輯。 – Scott
\ r \ n似乎是問題所在。我將.txt文件的格式更改爲*://*.domain1.com/*; *://*.domain2.com/*; *://*.domain3.com/*和list = xhr.responseText 。分裂(」;」);它的工作原理,非常感謝。 –