userScripts

Utilisez cette API pour enregistrer des scripts utilisateurs, des scripts tiers conçus pour manipuler des pages web ou fournir de nouvelles fonctionnalités. L'enregistrement d'un script utilisateur indique au navigateur de joindre le script aux pages qui correspondent aux modèles d'URL spécifiés lors de l'enregistrement.

Cette API offre des capacités similaires à contentScripts mais avec des fonctionnalités adaptées à la gestion de scripts tiers :

  • l'exécution se fait dans une sandbox isolée : chaque script utilisateur est exécuté dans une sandbox isolée au sein des processus de contenu web, ce qui empêche toute interférence accidentelle ou délibérée entre les scripts.
  • l'accès à la fenêtre et aux valeurs globales du document liées à la page web à laquelle le script utilisateur est attaché.
  • aucun accès aux API de WebExtension ou aux autorisations associées accordées à l'extension : le script API, qui hérite des autorisations de l'extension, peut fournir des API de WebExtension packagées aux scripts utilisateur enregistrés. Un script API est déclaré dans le fichier manifeste de l'extension en utilisant la clé du manifeste "user_scripts".

Cette API requiert la présence de la clé user_scripts dans le manifest.json, même si aucun script API n'est spécifié. Par exemple, user_scripts: {}.

Pour utiliser l'API, appelez register() en passant un objet définissant les scripts à enregistrer. La méthode renvoie une promesse qui est résolue par un objet  RegisteredUserScript.

Les scripts utilisateur sont désenregistrés lorsque la page d'extension correspondante (à partir de laquelle les scripts utilisateur ont été enregistrés) est déchargée, vous devez donc enregistrer un script utilisateur depuis une page d'extension qui persiste au moins aussi longtemps que vous voulez que les scripts utilisateur restent enregistrés

Types

userScripts.RegisteredUserScript
L'object renvoyé par la méthode  register(). Il représente les scripts utilisateur enregistrés et est utilisé pour désenregistrer les scripts utilisateur.

Méthodes

userScripts.register()
Enregistre les scripts utilisateur donnés.

Evénements

userScripts.onBeforeScript
Un événement disponible pour le script API, enregistré dans "user_scripts", qui s'exécute avant qu'un script utilisateur ne s'exécute. Utilisez-le pour déclencher l'exportation des API supplémentaires fournies par le script API, afin qu'elles soient disponibles pour le script utilisateur.

Compatibilité du navigateur

BCD tables only load in the browser

Voir aussi