electron получает URL локального файла javascript и возвращает это

#javascript #node.js #google-chrome-extension #electron

#javascript #node.js #google-chrome-расширение #electron

Вопрос:

Я пытаюсь имитировать некоторое поведение, которое легко достигается в расширениях Chrome, прямо сейчас мое приложение становится все больше, и я пытаюсь перестроить его в electron как отдельное приложение.

К сожалению, я столкнулся с проблемой, я пытаюсь предоставить свой собственный js для определенной веб-страницы. В расширениях Chrome я бы добился этого следующим образом:

 chrome.webRequest.onBeforeRequest.addListener(function (details) {
        console.log("Patched init.js");
        return {redirectUrl: chrome.extension.getURL("init.js")};
    }, {urls: ["https://example.com/js/init.js"]}, ["blocking"]);
 

Я просто не могу найти правильный способ сделать это в electron. Мне действительно нужно, чтобы он вернул локальный измененный файл js.

Что я могу использовать для onBeforeRequest, но, к сожалению, у меня все еще нет локального файла, как у расширения Chrome (функция getURL).

 session.defaultSession.webRequest.onBeforeRequest(function (details) {
        console.log("Patched jQuery");
        return {redirectUrl: getUrlFunctionNeeded("init")};
    }, {urls: ["https://example.com/js/init.js"]}, ["blocking"]);

Best regards
 

Ответ №1:

Если кто-то заинтересован в решении, я подумал, что достаточно создать небольшой веб-сервер со статическим узлом в приложении electron. Затем я использую localhost:port/staticmap/my.js как URL-адрес, вместо extention.getURL().