如何允许文件系统访问

时间:2019-07-14 12:47:57

标签: node-vm2

我想提供与fs一起使用的文件系统访问权限。如何授予vm2进程对特定目录的访问权限?

我尝试将external设置为true,并将root设置为/。在vm2之外运行时,该进程可以访问目录。

1 个答案:

答案 0 :(得分:0)

您设置了builtin: ['fs']吗?

尝试下面的代码示例

const {NodeVM} = require('vm2');

const vm = new NodeVM({
    console: 'inherit',
    sandbox: {},
    require: {
        external: true,
        builtin: ['fs', 'path'],
        root: "./",
        mock: {
            fs: {
                readFileSync() { return 'Nice try!'; }
            }
        }
    }
});