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)+");
可能就是你想要的。
我需要一件简单的事情:
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)+");
可能就是你想要的。