Я занимаюсь разработкой WebExtension для Chrome.Цель этого расширения - проанализировать все URL до их вызова.URL-адреса передаются в качестве параметра функции JavaScript checkUrl
.Внутри этой функции выполняется анализ.
Проблема в том, что функция JavaScript находится в файле, который часто изменяется.Следовательно, нет возможности включить этот файл в расширение.Файл поставляется из надежного источника.
Текущее состояние выглядит следующим образом:
background.js
// get file's content
chrome.runtime.sendNativeMessage( "myNativeApp", { text : "getMyFunc" },
function( response )
{
var contentFromFile = response.text;
});
chrome.webNavigation.onBeforeNavigate.addListener( ( details ) => {
var calledUrl = details.url;
if ( checkUrl( calledUrl ) === true )
{
[...]
}
});
file.js (в локальной файловой системе и не является частьюрасширения)
function checkUrl( url )
{
[...]
}
При запуске браузера содержимое файла считывается и отправляется расширению через собственный обмен сообщениями.
Можно ли выполнить функцию checkUrl
, которая хранится вcontentFromFile
?Я предполагаю, что это невозможно, потому что код вставлен в расширение.
Любая помощь будет оценена, спасибо!