Module de base

modulevm

Module Sandbox, utilisé pour isoler les environnements d'exploitation avec différents niveaux de sécurité

En établissant un bac à sable d'isolation, vous pouvez limiter les ressources auxquelles les scripts peuvent accéder lors de leur exécution, isoler différents environnements d'exécution de script et personnaliser les modules de base pour différents environnements afin de garantir la sécurité de l'environnement d'exploitation global.

L'exemple suivant crée un bac à sable qui restreint l'accès aux seuls modules de base globaux.assertmodule et ajoutez deux modules personnalisés a et b :

1 2 3 4 5 6 7 8
var vm = require('vm'); var sbox = new vm.SandBox({ a: 100, b: 200, assert: require('assert') }); var mod_in_sbox = sbox.require('./path/to/mod');

objet

SandBox

CréerSandBoxobjet, voirSandBox

1
SandBox vm.SandBox;

Script

CréerScriptobjet, voirScript

1
Script vm.Script;

fonction statique

createContext

Créer un objet contextuel

1 2
static Object vm.createContext(Object contextObject = {}, Object opts = {});

Paramètres d'appel :

  • contextObject: Objet, précise l'objet à contextualiser
  • opts: Objet, spécifie les options de contexte

Résultats de retour :

  • Object, renvoie l'objet contextuel

isContext

Si donnéobjectL'objet est utilisévm.createContext() pour la contextualisation, renvoie vrai

1
static Boolean vm.isContext(Object contextObject);

Paramètres d'appel :

  • contextObject: Objet, spécifie l'objet à vérifier

Résultats de retour :


runInContext

Exécute le code spécifié par code dans le contextualizedObject donné et renvoie le résultat

1 2 3
static Value vm.runInContext(String code, Object contextifiedObject, Object opts = {});

Paramètres d'appel :

  • code: String, spécifie le code du script à compiler et à exécuter
  • contextifiedObject: Objet, spécifie l'objet de contexte d'exécution
  • opts: Objet, spécifiez les options d'exécution

Résultats de retour :

  • Value, renvoie le résultat en cours d'exécution

Exécute le code spécifié par code dans le contextualizedObject donné et renvoie le résultat

1 2 3
static Value vm.runInContext(String code, Object contextifiedObject, String filename);

Paramètres d'appel :

  • code: String, spécifie le code du script à compiler et à exécuter
  • contextifiedObject: Objet, spécifie l'objet de contexte d'exécution
  • filename : String, spécifiez le nom du fichier de script

Résultats de retour :

  • Value, renvoie le résultat en cours d'exécution

runInNewContext

Utilisez le contextObject donné pour exécuter le code spécifié par code dans le contexte créé et renvoyer le résultat.

1 2 3
static Value vm.runInNewContext(String code, Object contextObject = {}, Object opts = {});

Paramètres d'appel :

  • code: String, spécifie le code du script à compiler et à exécuter
  • contextObject: Objet, précise l'objet à contextualiser
  • opts: Objet, spécifiez les options d'exécution

Résultats de retour :

  • Value, renvoie le résultat en cours d'exécution

Utilisez le contextObject donné pour exécuter le code spécifié par code dans le contexte créé et renvoyer le résultat.

1 2 3
static Value vm.runInNewContext(String code, Object contextObject = {}, String filename);

Paramètres d'appel :

  • code: String, spécifie le code du script à compiler et à exécuter
  • contextObject: Objet, précise l'objet à contextualiser
  • filename : String, spécifiez le nom du fichier de script

Résultats de retour :

  • Value, renvoie le résultat en cours d'exécution

runInThisContext

Exécute le code spécifié par code dans le contexte actuel et renvoie le résultat

1 2
static Value vm.runInThisContext(String code, Object opts = {});

Paramètres d'appel :

  • code: String, spécifie le code du script à compiler et à exécuter
  • opts: Objet, spécifiez les options d'exécution

Résultats de retour :

  • Value, renvoie le résultat en cours d'exécution

Exécute le code spécifié par code dans le contexte actuel et renvoie le résultat

1 2
static Value vm.runInThisContext(String code, String filename);

Paramètres d'appel :

  • code: String, spécifie le code du script à compiler et à exécuter
  • filename : String, spécifiez le nom du fichier de script

Résultats de retour :

  • Value, renvoie le résultat en cours d'exécution