chrome.history
Description
使用 chrome.history
API 与浏览器的访问页面记录交互。您可以添加、删除和查询浏览器历史记录中的 URL。要使用您自己的版本覆盖历史记录页面,请参阅覆盖页面Override Pages。
Permissions
history
# Manifest
您必须在扩展清单(extension manifest)中声明“历史history
”权限才能使用历史 API。例如:
{
"name": "My extension",
...
"permissions": [
"history"
],
...
}
# Transition types(过渡类型)
历史 API 使用转换类型来描述浏览器如何在特定访问中导航到特定 URL。例如,如果用户通过单击另一个页面上的链接访问一个页面,则转换类型为“链接link
”。
下表描述了每种转换类型。
Transition type(过渡类型) | Description |
---|---|
"link" | “链接” 用户通过单击另一个页面上的链接到达此页面。 |
"typed" | 用户通过在地址栏中键入 URL 来获得此页面。也用于其他显式导航操作。另请参阅生成的generated,它用于用户选择的选项与 URL 完全不同的情况。 |
"auto_bookmark" | 用户通过 UI 中的建议(例如,通过菜单项)进入此页面。 |
"auto_subframe" | 子帧导航。这是在非顶级框架中自动加载的任何内容。例如,如果一个页面由多个包含广告的框架组成,则这些广告 URL 具有这种转换类型。用户甚至可能没有意识到这些页面中的内容是一个单独的框架,因此可能不关心 URL (see also manual_subframe). |
"manual_subframe" | 对于用户明确请求并在后退/前进(back/forward)列表中生成新导航条目的子帧导航。显式请求的帧可能比自动加载的帧更重要,因为用户可能关心请求的帧已加载这一事实。 |
"generated" | 用户通过在地址栏中键入并选择一个看起来不像 URL 的条目来访问此页面。例如,匹配项可能具有 Google 搜索结果页面的 URL,但对用户而言,它可能显示为“在 Google 中搜索...”。这些与键入的typed导航并不完全相同,因为用户没有键入或看到目标 URL。See also keyword. |
"auto_toplevel" | 该页面是在命令行中指定的或者是起始页面。 |
"form_submit" | 用户在表单中填写值并提交。请注意,在某些情况下——例如当表单使用脚本提交内容时——提交表单不会导致这种转换类型。 |
"reload" | 用户通过单击重新加载按钮或在地址栏中按 Enter 重新加载了页面。会话恢复和重新打开关闭的选项卡也使用这种转换类型。 |
"keyword" | URL 是从默认搜索提供程序以外的可替换关键字生成的。See also keyword_generated. |
"keyword_generated" | 对应于为关键字生成的访问。 See also keyword. |
# Examples
使用该API的示例,请参见history sample directory目录和history API test directory目录。有关其他示例和查看源代码的帮助,请参阅示例Samples。
Summary
Types
Methods
Events
Types
HistoryItem
封装历史查询的一个结果的对象。
PROPERTIES
id
string
项目的唯一标识符。
lastVisitTime
number optional
上次加载此页面的时间,以自纪元以来的毫秒数表示。
title
string optional
上次加载时页面的标题。
typedCount
number optional
用户通过输入地址导航到此页面的次数。
url
string optional
用户导航到的 URL。
visitCount
number optional
用户导航到此页面的次数。
TransitionType
Chrome 44+
此访问的转换类型transition type来自其推荐人(referrer)。
TYPE
"link", "typed", "auto_bookmark", "auto_subframe", "manual_subframe", "generated", "auto_toplevel", "form_submit", "reload", "keyword", or "keyword_generated"
UrlDetails
Chrome 88+
PROPERTIES
url
string
操作的 URL。它必须采用调用 history.search 返回的格式。
VisitItem
封装对 URL 的一次访问的对象。
PROPERTIES
id
string
项目的唯一标识符。
referringVisitId
string
推荐人的访问 ID。
transition
此访问的转换类型transition type来自其推荐人。
visitId
string
本次访问的唯一标识符。
visitTime
number optional
这次访问发生的时间,以自纪元以来的毫秒数表示。
Methods
addUrl
chrome.history.addUrl( details: UrlDetails, callback?: function, )
Promise
将 URL 添加到当前时间的历史记录,转换类型transition type为“链接link
”。
PARAMETERS
details
callback
function optional
The
callback
parameter looks like:() => void
RETURNS
Promise<void>
Pending
这仅在未指定
callback
参数时返回Promise
,并且使用 MV3+。Promise
中的类型与callback
的第一个参数相同。
deleteAll
chrome.history.deleteAll(
callback?: function,
)
Promise
从历史记录中删除所有项目。
PARAMETERS
callback
function optional
The
callback
parameter looks like:() => void
RETURNS
Promise<void>
Pending
这仅在未指定
callback
参数时返回Promise
,并且使用 MV3+。Promise
中的类型与callback
的第一个参数相同。
deleteRange
chrome.history.deleteRange(
range: object,
callback?: function,
)
Promise
从历史记录中删除指定日期范围内的所有项目。除非所有访问都在该范围内,否则页面不会从历史记录中删除。
PARAMETERS
range
object
endTime
number
在此日期之前添加到历史记录的项目,以自纪元以来的毫秒数表示。
startTime
number
在此日期之后添加到历史记录的项目,以自纪元以来的毫秒数表示。
callback
function optional
The
callback
parameter looks like:() => void
RETURNS
Promise<void>
Pending
这仅在未指定
callback
参数时返回Promise
,并且使用 MV3+。Promise
中的类型与callback
的第一个参数相同。
deleteUrl
chrome.history.deleteUrl( details: UrlDetails, callback?: function, )
Promise
从历史记录中删除所有出现的给定 URL。
PARAMETERS
details
callback
function optional
The
callback
parameter looks like:() => void
RETURNS
Promise<void>
Pending
这仅在未指定
callback
参数时返回Promise
,并且使用 MV3+。Promise
中的类型与callback
的第一个参数相同。
getVisits
chrome.history.getVisits( details: UrlDetails, callback?: function, )
Promise
检索有关访问 URL 的信息。
PARAMETERS
details
callback
function optional
The
callback
parameter looks like:(results: VisitItem[]) => void
results
RETURNS
Promise<VisitItem[]>
Pending
这仅在未指定
callback
参数时返回Promise
,并且使用 MV3+。Promise
中的类型与callback
的第一个参数相同。
search
chrome.history.search(
query: object,
callback?: function,
)
Promise
搜索与查询匹配的每个页面的上次访问时间的历史记录。
PARAMETERS
query
object
endTime
number optional
将结果限制为在此日期之前访问过的结果,以自纪元以来的毫秒数表示。
maxResults
number optional
要检索的最大结果数。默认为 100。
startTime
number optional
将结果限制为在此日期之后访问的结果,以自纪元以来的毫秒数表示。如果未指定,则默认为过去 24 小时。
text
string
对历史服务的自由文本查询。留空以检索所有页面。
callback
function optional
The
callback
parameter looks like:(results: HistoryItem[]) => void
results
RETURNS
Promise<HistoryItem[]>
Pending
这仅在未指定
callback
参数时返回Promise
,并且使用 MV3+。Promise
中的类型与callback
的第一个参数相同。
Events
onVisited
chrome.history.onVisited.addListener(
callback: function,
)
在访问 URL 时触发,提供该 URL 的 HistoryItem 数据。此事件在页面加载之前触发。
PARAMETERS
callback
function
The
callback
parameter looks like:(result: HistoryItem) => void
result
onVisitRemoved
chrome.history.onVisitRemoved.addListener(
callback: function,
)
从历史服务中删除一个或多个 URL 时触发。删除所有访问后,URL 将从历史记录中清除。
PARAMETERS
callback
function
The
callback
parameter looks like:(removed: object) => void
removed
object
allHistory
boolean
如果删除所有历史记录,则为True。如果为 true,则 url 将为空。
urls
string[] optional
By.一粒技术服务.