Google chrome Chrome.history.getvisions返回空集,即使Chrome.history.search中存在该项

Google chrome Chrome.history.getvisions返回空集,即使Chrome.history.search中存在该项,google-chrome,google-chrome-extension,browser-history,Google Chrome,Google Chrome Extension,Browser History,我想收集我过去的N个历史记录项目,然后查找我访问该页面的所有时间的时间戳,直到我的chrome历史记录包含为止 Chrome.history.search允许我获取最近N个历史项目的URL 但是,如果我现在在每个URL上调用Chrome.history.getvisions,有些URL会返回“[]”,即使它们存在于我的历史记录中。此外,在中搜索URLchrome://history 正确返回项目,即使getVisits调用返回[] 还有一个小道消息,这似乎是一个问题,在我的历史上我走得越远。我的

我想收集我过去的N个历史记录项目,然后查找我访问该页面的所有时间的时间戳,直到我的chrome历史记录包含为止

Chrome.history.search允许我获取最近N个历史项目的URL

但是,如果我现在在每个URL上调用Chrome.history.getvisions,有些URL会返回“[]”,即使它们存在于我的历史记录中。此外,在中搜索URLchrome://history 正确返回项目,即使getVisits调用返回[]

还有一个小道消息,这似乎是一个问题,在我的历史上我走得越远。我的前50个项目都返回一个合适的[Object],但在那之后,几乎所有(看起来像90%+)都是空集[]

下图显示了返回[]的API调用,而历史记录正确地显示了结果。

通过查看扩展示例,修复如下。您需要一个闭包来将url绑定到回调的args(chrome.history.getvisions()函数的回调)中,以使其工作

函数加载url访问(url){
var processVisitsWithUrl=函数(url){
//我们需要访问项目的url来处理访问。
//使用闭包将url绑定到回调的参数中。
返回功能(visitItems){
ProcessVisitions(url、visitItems);
};
};
getVisits({url:url},processVisitsWithUrl(url));
}
函数processvisions(url、visitItems){
//在此处处理访问项目。。。
}