Плагин для браузера. Не работает вывод в консоль

Здравствуйте.
Хочу написать плагин для браузера, который бы отслеживал появление на странице файлов определённого типа и автоматически их сохранял. Как их сохранять - это я потом найду. Проблема не в этом.
Для перехвата запросов нужен такой код:



function logURL(requestDetails) {
  console.log("Loading: " + requestDetails.url);
}

browser.webRequest.onBeforeRequest.addListener(
  logURL,
  {urls: ["<all_urls>"]}
);

Код взят из официальной справки firefox. Там еще в манифесте надо разрешения прописать. Я всё сделал.
Но это не работает. В консоль ничего не выводится.
Нашел на гитхабе исходник

Засунул в браузер - работает. Но если я в его код добавляю строчки

const urlFilter = (requestDetails) => {
	console.log("bla-bla"); <<<<<
	let e;

	if (requestDetails.requestHeaders) {
...

const addURL = (requestDetails) => {
	console.log("bla-bla"); <<<<<
	const url = new URL(requestDetails.url);
...

Код продолжает работать, но в консоль всё-равно ничего не выводится.
А в этом коде консоль работает

сам проверял

А зачем их перехватывать?
Если

то скорее надо просто при загрузке страницы посмотреть все ссылки на ней.

чтобы сохранять

новые файлы появляются уже после загрузки

Можно с MutationObserver если они появляются в определенном месте, тогда и никаких особых прав не надо, хоть юзерскриптом.

А хоть что-то выводится когда-нибудь? Бывает сайты удаляют функцию console.log.

:confusedparrot: А при чем тут сайты, если консоль и лог локальные? :thinking: Как тогда узнать, выполняется функция или нет?

Ну так скрипты на сайтах это делают )

console.log = function() {}

Можно восстановить как-то.

Так просто в DevTools console.log работает?)

Это где?

image

если делать как в видео, то работает

"content_scripts": [
        {
            "matches": ["<all_urls>"],
            "js": ["script.js"]
        }
    ],

    "background": {

        "matches": ["<all_urls>"],
        "scripts": ["background.js"]

    }

Похоже на то что в script.js консоль работает, а в background.js - нет :thinking:
Если консоль не работает, то как еще можно визуализировать работоспособность кода?

Ну так оно ж и правда не связано с текущей страницей.

Это надо как-то по-другому отлаживать. Вроде в списке расширений в браузере что-то про это есть.

https://www.google.com/search?q=extension+background+script+console.log
Quick tip for debugging Chrome Extensions
Debugging | Firefox Extension Workshop

Что не связано? И что это значит?
Ссылки позже посмотрю.

Ну оно же в фоне выполняется когда-то, а не на текущей странице.

То есть, для консоли это имеет значение? :dizzy_face: Странная какая-то консоль :thinking:

Так это консоль текущей страницы, а не всего браузера.

А православной консоли нету, как в нормальных языках?

В языках нет консоли. Она может быть в ОС. И там тоже если просто открыть новое окно консоли, то оно не начнет выводить логи всех служб винды/демонов линукса.

Я это знаю, конечно же.

И это тоже знаю.