Как проверить URL каждой открытой вкладки?А как выполнить действие для вкладок с соответствующим URL-адресом? » - PullRequest
0 голосов
/ 11 июня 2019

Я совершенно новичок в кодировании (за исключением некоторых базовых VBA и некоторых SQL), и мне нужно создать расширение Chrome, которое будет обновлять все вкладки, содержащие URL, начинающиеся с "https://localhost:4848/sense/app/",, и делать это каждые 15 минут.

Из того, что я узнал за последние 3 часа, я бы сказал, что мне нужно поместить его в файл background.js и сделать его постоянным, а затем использовать SetInterval для вызова функции. К сожалению, я в основном не имею ни малейшего понятия о том, как получить разные строки и как принудительно обновить на разных вкладках

У меня есть некоторый код для определения количества вкладок и всех URL-адресов, но он дает мне слишком много информации, и я не знаю, чтобы поставить условие для тех, у кого есть соответствующий URL:

'

chrome.windows.getAll({populate: true}, function(allWindows)
{console.log(allWindows);
});

`

Я ожидаю, что он обновит каждую вкладку URL-адресом, начинающимся с https://localhost:4848/sense/app/

1 Ответ

1 голос
/ 12 июня 2019

Я бы лучше использовал chrome.alarms API, так как у вас есть интервал минут.Тогда вам не нужно сохранять постоянную фоновую страницу.

Ваш код будет выглядеть так:

chrome.alarms.create('my_alarm', {
    periodInMinutes: 15
});

chrome.alarms.onAlarm.addListener(alarm => {
    if (alarm && alarm.name === 'my_alarm') {
        chrome.tabs.query({url: 'https://localhost:4848/sense/app/*'}, foundTabs => {
            if (foundTabs && foundTabs.length) {
                foundTabs.forEach(tab => chrome.tabs.reload(tab.id));
            }
        });
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...