如何获取用户访问的任何新网站的 URL?

How can I get the URL of any new website that the user visits?

我目前正在尝试创建一个扩展程序来跟踪用户访问某些网站的次数。例如,如果用户打开一个选项卡并导航到 https://www.facebook.com/, chrome.storage updates to reflect this change (the integer value for the key https://www.facebook.com/ 增加 1).

现在,我正在使用 chrome.tabs.onUpdated 来监听 URL 变化并相应地更新 chrome.storage。但是,此侦听器也会在选项卡关闭时触发(导致该网站的两次更新,一次用于访问它,一次用于关闭它)。

我尝试使用 chrome.tabs.onCreated,但我需要监听选项卡内的更改(此监听器不提供)。

我的问题是,如何才能仅在用户访问网站时更新 chrome.storage(而不是在用户关闭网站标签页时)?

我刚刚意识到我的错误。显然,我做的另一个功能是调用扩展的存储功能,导致重复条目。

为了将来参考,这是我用来检查用户访问的新 URL 的代码:

chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
    if (changeInfo.status === 'complete') {
      console.log(tab.url);
    }
});