safeify
safeify copied to clipboard
执行assert 断言出错 assert.equal is not a function
const assert = require('assert')
const {default: Safeify} = require("safeify");
async function sandboxFn(context, script) {
// 创建 safeify 实例
const safeVm = new Safeify({
timeout: 3000,
asyncTimeout: 60000
})
// 执行动态代码
const result = await safeVm.run(script, context)
// 释放资源
safeVm.destroy()
return result
}
const context = {
a: 1,
b: 2,
c:1,
add(a, b) {
return a + b;
},
assert: assert
};
sandboxFn(context,`return assert.equal(a, c)`).then(res=>{
console.log('result',res);
}).catch(err=>{
console.log(err)
})

node version: 14.17
safeify version: 5.0.5
https://mdnice.com/writing/c1a82b5817934d2fad3dbf8aaae93aee