chrome.sessions

refresh date: 2026-09-25 robots: noindex

说明

使用 chrome.sessions API 查询和恢复浏览会话中的标签页和窗口。

权限

sessions

类型

Device

属性

  • deviceName

    字符串

    外部设备的名称。

  • 专题演讲

    外来设备的开放窗口会话列表,按会话的最近修改时间从近到远排序。

Filter

属性

  • maxResults

    number 可选

    所请求列表中要提取的条目数上限。省略此参数可提取最大条目数 (sessions.MAX_SESSION_RESULTS)。

Session

属性

  • lastModified

    数值

    窗口或标签页关闭或修改的时间,以自纪元开始算起的秒数表示。

  • Tab

    标签页 可选

    如果相应条目描述的是标签页,则为 tabs.Tab。系统会设置此值或 sessions.Session.window。

  • 窗口

    窗口(可选)

    如果相应条目描述的是窗口,则为 windows.Window。系统会设置此值或 sessions.Session.tab。

属性

MAX_SESSION_RESULTS

请求的列表中将包含的 sessions.Session 的数量上限。

值

25

方法

getDevices()

Promise
chrome.sessions.getDevices(
  filter?: Filter,
  callback?: function,
)
: Promise<Device[]>

检索所有具有已同步会话的设备。

参数

返回

  • Promise<Device[]>

    Chrome 96 及更高版本

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

getRecentlyClosed()

Promise
chrome.sessions.getRecentlyClosed(
  filter?: Filter,
  callback?: function,
)
: Promise<Session[]>

获取最近关闭的标签页和/或窗口的列表。

参数

  • 过滤条件

    过滤条件(可选)

  • callback

    函数 可选

    callback 参数如下所示:

    (sessions: Session[]) => void

    • 专题演讲

      已关闭条目的列表,按关闭顺序的反向排列(最近关闭的标签页或窗口将位于索引 0 处)。条目可能包含标签页或窗口。

返回

  • Promise<Session[]>

    Chrome 96 及更高版本

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

restore()

Promise
chrome.sessions.restore(
  sessionId?: string,
  callback?: function,
)
: Promise<Session>

重新打开 windows.Window 或 tabs.Tab,并提供一个可选的回调函数,用于在条目恢复后运行。

参数

返回

  • Promise<Session>

    Chrome 96 及更高版本

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

事件

onChanged

chrome.sessions.onChanged.addListener(
  callback: function,
)

在最近关闭的标签页和/或窗口发生更改时触发。此事件不会监控同步会话更改。

参数

  • callback

    函数

    callback 参数如下所示:

    () => void