В моем Chrome расширении я получаю URL текущей вкладки с let newUrl = new URL(tab.url);
. Но, если он расположен на внутренних Chrome URL-адресах, начиная с chrome://
, расширение выдает ошибку Failed to construct 'URL': Invalid URL
.
. В консоли ошибка выглядит, как на скриншоте:

Соответствующий код:
chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab) => {
if (changeInfo.url) run(tab);
});
chrome.tabs.onActivated.addListener(info => {
chrome.tabs.get(info.tabId, run);
});
const processingTabId = {};
function run(tab) {
if (processingTabId[tab.id]) return;
processingTabId[tab.id] = true;
let newUrl = new URL(tab.url);
Как даже понял, ошибка выдается всегда, если я нажимаю на любую ссылку в результатах поиска Google.
Как обойти это, чтобы работать с real
urls и не получить ошибку на chrome://
-urls?