sessions.Session

Session 对象表示用户在当前浏览器会话中关闭的标签页或窗口。

如果标签页已关闭但其窗口未关闭,则会话将表示为Tab 对象:例如,因为用户单击了“关闭标签页”按钮,并且此标签页不是其窗口中的唯一标签页。

如果窗口已关闭,则会话将表示为Window 对象:例如,因为用户单击了“关闭窗口”按钮,或关闭了窗口中唯一打开的标签页。

请注意,不同的浏览器对会话何时为 Tab 和何时为 Window 可能有不同的理解。例如

  • 在 Chrome 中,如果用户关闭包含多个标签页的窗口,则会话将记录为 Window。如果用户关闭仅包含一个标签页的窗口,则将其记录为 Tab。
  • 在 Firefox 中,如果用户关闭窗口(或窗口中最后一个标签页),则会话将记录为 Window,如果用户关闭的标签页不是其窗口中的最后一个标签页,则将其记录为 Tab。

对于打开的标签页,其 Tab 对象将不具有 sessionId。当标签页关闭时,它将具有 sessionId,但不会具有标签页 id。如果标签页被恢复,它将获得一个新的标签页 id 并将丢失 sessionId

类型

此类型的值为对象。它们包含以下属性

lastModified

number。标签页或窗口关闭的时间,以自纪元以来的毫秒数 为单位。

tab 可选

object。如果对象表示已关闭的标签页,则此属性存在,并且将为tabs.Tab 对象。只有当扩展具有“tabs”权限主机权限 以访问标签页的 URL 时,它才会包含 urltitlefavIconUrl

window 可选

object。如果对象表示已关闭的窗口,则此属性存在,并且将为windows.Window 对象。

浏览器兼容性

BCD 表格仅在浏览器中加载

注意:此 API 基于 Chromium 的chrome.sessions API。