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

NodeJS: Run module method within sandbox

我需要一件简单的事情:

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

在 nodejs 中可以实现这样的功能吗?非常感谢

如果 insideMethod 函数不从上下文之外调用或使用 functions/vlues,它应该 运行 在,是的。

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

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