Documentation
/
Obfuscation VM
/

Environnement de navigateur

Environnement de navigateur

Pro
v7.9.0+

Déclarez la manière dont votre build de production est servi pour que le code protégé puisse y lier son intégrité.

L'option browserEnvironment déclare des faits sur l'environnement dans lequel votre build de production est servi, afin que le code protégé puisse s'y lier. Elle n'a d'effet qu'avec vmSelfDefending ; seule, elle ne fait rien.

C'est un petit objet. Il ne comporte aujourd'hui qu'un seul champ :

browserEnvironment: { transport: 'https' }

transport

Le schéma par lequel votre production sert le bundle — 'http' ou 'https'.

Avec 'https', une copie qu'un rétro-ingénieur sert en HTTP simple ne fonctionnera pas correctement. 'http' ou un champ non défini n'ajoute pas cette protection.

Cibles prises en charge

browserEnvironment ne s'applique qu'aux cibles browser, browser-no-eval et service-worker. Pour node, userscript et bytenode, l'option est rejetée : l'obfuscation échoue avec une erreur de validation au lieu d'ignorer silencieusement le réglage.

Prérequis

  • Activée avec vmSelfDefending ; sans effet autrement.
  • Une cible browser, browser-no-eval ou service-worker.
  • Version de l'obfuscateur 7.9.0 ou ultérieure.

Exemple

JavaScriptObfuscator.obfuscate(code, {
    vmObfuscation: true,
    vmSelfDefending: true,
    target: 'browser',
    browserEnvironment: { transport: 'https' }
});