我想在 node.js 中使用 runInNewContext 执行不受信任的 js 代码,但据我所知,没有办法限制其执行时间。这也是一个同步操作。有没有办法设置它的超时或它的异步版本,让我可以从“外部”控制它的执行?
更新:在外部进程中运行是不好的:
- 占用太多资源
- 更重要的是,我需要代码通过沙箱环境访问我的数据/代码
最佳答案
使用 dnode 在外部进程中运行脚本或 child_process.fork , 设置截止时间计时器,如果超时则终止进程,如果脚本完成则设置计时器。
关于node.js - Node : Is it possible to eval js code using runInNewContext and limit its execution time by a timeout?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6529342/