node-vm

node.js VM 模組 VM 是 node.js 的核心模組,提供安全的環境 (沙箱) 來測試不信任的程式碼。 基本概念 在 VM 模組裡面,有兩個基本的物件,script 和 context。script 是經過「編譯」程式,context 是給在沙箱裡面的程式碼的全域物件 (global) 。沙箱中的程式只能存取透過 context 指定的物件。 建立 script VM 模組提供 Script 建構子,可以透過他來建立 Script 物件。 const vm = require('vm'); const script = new vm.Script('i++'); 也可以用 vm.createScript const vm = require('vm'); const script = vm.createScript('i++'); vm.Script vm.createScript 在 nodejs docs 上我沒有找到,但是我在自己的電腦上 (node v14.15.0) 測試是可以用的 建立 context vm 模組沒有提供建立 context 的建構子,我們只能透過 vm.createContext 來建立 context。...

2021-January-13 · 1 分鐘 · simba-fs