sessions.getRecentlyClosed()

Gibt ein Array von Session-Objekten zurück, die Fenster und Tabs repräsentieren, die in der aktuellen Browsersitzung geschlossen wurden (das heißt: seit dem Start des Browsers).

Dies ist eine asynchrone Funktion, die ein Promise zurückgibt.

Syntax

js
let gettingSessions = browser.sessions.getRecentlyClosed(
  filter             // optional object
)

Parameter

filter Optional

object. Ein sessions.Filter-Objekt, das den zurückgegebenen Satz von Sitzungen einschränkt.

Rückgabewert

Ein Promise. Dieses wird mit einem Array von Session-Objekten erfüllt, eines für jeden der zuletzt geschlossenen Tabs oder Fenster in der aktuellen Browsersitzung, bis zu sessions.MAX_SESSION_RESULTS oder der im filter-Argument enthaltenen Anzahl, je nachdem, welche kleiner ist. Das Array erfolgt in der umgekehrten Reihenfolge, in der Tabs oder Fenster geschlossen wurden, sodass der zuletzt geschlossene Eintrag an Index 0 steht.

Wenn ein Fehler auftritt, wird das Promise mit einer Fehlermeldung abgelehnt.

Browser-Kompatibilität

BCD tables only load in the browser

Beispiele

Dieser Code stellt die zuletzt geschlossene Sitzung wieder her, unabhängig davon, ob es sich um einen Tab oder ein Fenster handelt:

js
function restoreMostRecent(sessionInfos) {
  if (!sessionInfos.length) {
    console.log("No sessions found");
    return;
  }
  let sessionInfo = sessionInfos[0];
  if (sessionInfo.tab) {
    browser.sessions.restore(sessionInfo.tab.sessionId);
  } else {
    browser.sessions.restore(sessionInfo.window.sessionId);
  }
}

function onError(error) {
  console.log(error);
}

browser.browserAction.onClicked.addListener(() => {
  let gettingSessions = browser.sessions.getRecentlyClosed({
    maxResults: 1,
  });
  gettingSessions.then(restoreMostRecent, onError);
});

Hinweis: Diese API basiert auf der chrome.sessions API von Chromium.