我编写了一个小型扩展程序,使用deleteRange
API中的chrome.history
来删除开始和结束时间戳之间的部分浏览器历史记录。
chrome.history.deleteRange({
startTime : startTime,
endTime : endTime
}, function() {
console.log("Recent history deleted successfully");
});
我使用startTime
同时获得endTime
和(new Date()).getTime()
。
它"有点作品"。如果我在启动扩展程序后第一次在Chrome中打开一个页面,我就可以在多功能框中使用其网址而无需完全输入它(这标志着Chrome记住了URL的历史记录)。致电deleteRange
后,我无法再这样做了。我还在控制台上看到了文本Recent history deleted successfully
。这表明该页面已从历史记录中删除。
但它没有。如果我转到Chrome /设置/历史记录,我仍然可以看到我何时访问该页面。我希望这会被抹掉......我怎么能用最近的历史记录使用开始和结束时间标记擦除一个页面(我之前从未打开过)?
编辑:我添加了一行
console.log("Right before calling deleteRange. startTime=" + startTime + " / endTime=" + endTime);
导致我的代码
Right before calling deleteRange. startTime=1416931451880 / endTime=1416931463988
EDIT2:我开了Chromium bug。让我们看看我能从那里得到什么
答案 0 :(得分:1)
Chromium开发人员已确认该错误。这取决于启用历史记录同步。
答案 1 :(得分:0)
查看文档:{{3}}
它说:
除非所有次访问失败,否则不会从历史记录中删除页面 在范围内。
所以我的猜测是,那些你得到建议的网页,会在startTime之前进行访问。因此,不会删除其网址,因为并非所有访问都属于您指定的范围。