--- title: sessions.restore() slug: Mozilla/Add-ons/WebExtensions/API/sessions/restore tags: - API - Add-ons - Extensions - Methode(2) - Non-standard - WebExtensions - restaure - sessions translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/restore ---
{{AddonSidebar()}}

Restaure un onglet ou une fenêtre fermée. La restauration ne réouvre pas seulement l'onglet ou la fenêtre : elle rétablit également l'historique de navigation de l'onglet afin que les boutons arrière/avant fonctionnent. La restauration d'une fenêtre restaurera tous les onglets que la fenêtre contenait lors de sa fermeture.

Il s'agit d'une fonction asynchrone que retourne une Promise.

Syntaxe

var restoringSession = browser.sessions.restore(
  sessionId             // string
)

Paramètres

sessionId
string. Une chaîne contenant l'ID de session pour la fenêtre ou l'onglet à restaurer. Cela se trouve dans la propriété sessionId de l'objet   {{WebExtAPIRef("tabs.Tab", "Tab")}} ou {{WebExtAPIRef("windows.Window", "Window")}} dans  {{WebExtAPIRef("sessions.Session", "Session")}} retourné de {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.

Valeur renvoyée

Une Promise. Cela sera rempli avec un objet  {{WebExtAPIRef("sessions.Session", "Session")}} représentant la session qui a été restaurée.

Compatibilité du navigateur

{{Compat("webextensions.api.sessions.restore")}}

Exemples

Cela restaure la session fermée la plus récente, qu'il s'agisse d'une fenêtre ou d'un onglet :

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(function() {
  var gettingSessions = browser.sessions.getRecentlyClosed({
    maxResults: 1
  });
  gettingSessions.then(restoreMostRecent, onError);
});

{{WebExtExamples}}

Remerciements

Cette API est basée sur l'API Chromium chrome.sessions.

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.