topSites.get()
==============

Obtient un tableau contenant des informations sur les pages que l'utilisateur a visitées souvent et récemment.

Les navigateurs gardent une liste des pages que l'utilisateur visite souvent et récemment. Ils utilisent cette liste pour aider l'utilisateur à retourner à ces endroits facilement. Par exemple, Firefox fournit par défaut une liste des pages les plus visitées dans la page "Nouvel onglet".

Pour déterminer quelles pages apparaissent dans la liste et dans quel ordre, le navigateur combine "fréquence" - combien de fois l'utilisateur a visité la page - et "récente" - combien de fois l'utilisateur a visité la page.

Le navigateur peut ensuite appliquer un filtrage supplémentaire à cette liste avant de la présenter à l'utilisateur. Par exemple, dans Firefox, la page "Nouvel onglet" ne liste qu'une page par domaine, et l'utilisateur peut bloquer l'apparition de pages dans la liste.

L'API `topSites.get()` permet à une extension d'accéder à cette liste. Appelé sans aucune option, il fournira la liste filtrée des pages, c'est-à-dire celle qui apparaît dans la page "Nouvel onglet". Cependant, en fournissant diverses options, il est possible pour une extension d'obtenir la liste non filtrée des pages.

Il s'agit d'une fonction asynchrone qui renvoie une `Promise`.

Pour utiliser l'API topSites, vous devez avoir la permission de l'API "topSites"

Syntaxe
-------


```js
var gettingTopSites = browser.topSites.get();
```

### Paramètres

`options`

`object`. Options pour modifier la liste des pages retournées. Il peut s'agir de l'une des propriétés suivantes :

`includeBlocked` Facultatif

`Boolean`. Inclure les pages que l'utilisateur a supprimées de la page "Nouvel onglet". La valeur par défaut est `false`.

`includeFavicon` Facultatif

`Boolean`. Inclure les favicons dans les résultats, pour les pages où ils sont disponibles. La valeur par défaut est `false`.

`includePinned` Facultatif

`Boolean`. inclure les sites que l'utilisateur a épinglés dans le nouvel onglet Firefox.
 Par défaut à `false`.


`includeSearchShortcuts` Facultatif

`Boolean`. Inclut les raccourcis de recherche qui apparaissent dans le nouvel onglet Firefox.
 Par défaut à `false`.


`limit` Facultatif

`Integer`. Le nombre de pages à retourner. Ce chiffre doit être compris entre 1 et 100 inclusivement. La valeur par défaut est 12.

`onePerDomain` Facultatif

`Boolean`. N'incluez qu'une seule page par domaine. La valeur par défaut est `true`.


### Valeur retournée

Une `Promise`. Ceci sera réalisé avec un tableau d'objets `MostVisitedURL`, un pour chaque site listé dans la page "Nouvel onglet" du navigateur. Si une erreur se produit, la presse sera rejetée avec un message d'erreur.

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Exemples
--------

Ce code enregistre le titre et l'UL de tous les sites dans la page "Nouvel onglet" :


```js
function logTopSites(topSitesArray) {
  for (topSite of topSitesArray) {
    console.log(`Title: ${topSite.title}, URL: ${topSite.url}`);
  }
}

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

var gettingTopSites = browser.topSites.get();
gettingTopSites.then(logTopSites, onError);
```


Ce code enregistre le titre et l'URL de toutes les pages d'accueil, y compris celles que l'utilisateur a bloquées, et peut inclure plusieurs pages dans le même domaine :


```js
function logTopSites(topSitesArray) {
  for (topSite of topSitesArray) {
    console.log(`Title: ${topSite.title}, URL: ${topSite.url}`);
  }
}

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

var gettingTopSites = browser.topSites.get({
  includeBlocked: true,
  onePerDomain: false,
});

gettingTopSites.then(logTopSites, onError);
```

### Example extensions

* top-sites

**Note :**

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