Skip to content

📦 Safe sandbox that can be used to execute untrusted code.

License

Notifications You must be signed in to change notification settings

Houfeng/safeify

Repository files navigation

Safeify

npm NPM Version Build Status Coverage Status npm

说明

Safeify 可让 Node 应用安全的隔离执行非信任的用户自定义代码,了解详细

安装

npm install safeify -S

使用

import { Safeify } from "safeify";

(async ()=>{

  // 创建 safeify 实例
  const safeVm = new Safeify({
    timeout: 3000,
    asyncTimeout: 60000
  });

  // 定义 context
  const context = {
    a: 1,
    b: 2,
    system: {
      add(a: number, b: number) {
        return (a + b) * 2;
      }
    }
  };

  // 执行动态代码
  const result= await safeVm.run(`return system.add(1,2)`, context);
  console.log('result', result);

  // 释放资源
  safeVm.destroy();
  
})();

About

📦 Safe sandbox that can be used to execute untrusted code.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •