NodeJS:在沙箱中运行模块方法

时间:2015-01-13 00:10:58

标签: node.js virtual-machine sandbox

我需要一件简单的事情:

var Base = function(module){    
    this.outsideMethod = function(arg1)
    {
        // run method in new context - sandbox
        return vm.runInNewContext(module.insideMethod, arg1);
    }
}

在nodejs中可能是这样的吗?非常感谢

1 个答案:

答案 0 :(得分:0)

如果insideMethod函数没有调用或使用来自上下文之外的函数/ vlues,它将运行,是的。

您可以将Javascript中的任何函数转换为字符串。

vm.runInNewContext('('+module.insideMethod+')('+JSON.stringify(arg1)+");可能就是你想要的。