历史记录未使用 chrome.history.deleteRange 完全删除

History not fully deleted using chrome.history.deleteRange

本文关键字:删除 deleteRange history 记录 未使用 chrome 历史      更新时间:2023-09-26

我编写了一个小型扩展,它使用来自 API chrome.history deleteRange来删除开始和结束时间戳之间的部分浏览器历史记录。

chrome.history.deleteRange({
   startTime : startTime,
   endTime : endTime
}, function() {
   console.log("Recent history deleted successfully");
});

我使用(new Date()).getTime()得到startTimeendTime

它"有点工作"。如果我在启动扩展程序后第一次在 Chrome 中打开页面,我将能够在多功能框中使用它的网址,而无需完全输入它(对我来说,这是一个标志,表明 Chrome 通过其历史记录记住了该网址)。打电话给deleteRange后,我再也无法这样做了。我还在控制台上看到了Recent history deleted successfully的文本。这对我来说是一个迹象,表明该页面已从历史记录中抹去。

但事实并非如此。如果我转到Chrome/设置/历史记录,我仍然可以看到我何时访问了该页面。我以为这会被抹去...如何使用开始和结束时间戳从最近的历史记录中擦除页面(我以前从未打开过)?

编辑:我添加了行

console.log("Right before calling deleteRange. startTime=" + startTime + " / endTime=" + endTime);

到我的代码,导致

Right before calling deleteRange. startTime=1416931451880 / endTime=1416931463988

编辑2:我打开了一个铬错误。让我们看看我能从那里得到什么

Chromium开发人员已经确认了这个错误。这取决于启用的历史记录同步。

请参阅铬错误报告

查看文档:API

它指出:

页面不会从历史记录中删除,除非所有访问都下降 在范围内。

所以我的猜测是,你得到建议的那些页面,在开始时间之前就有访问。因此,他们的网址不会被删除,因为并非所有访问都属于您指定的范围。