我想要一个选项,它是一个函数,它将vm2
的require
作为参数并返回一个应该使用的新函数,而不是vm2
的require
。
有点相关:我正在为用户提交的代码使用自定义文件系统。 有没有一种方法可以手动处理本地需求,例如require('./otherUserSubmittedFile')
,从自定义文件系统中获取文件并将其交给vm2
然后沙箱?
更新:
非常粗糙,但已经实现了一些自定义/虚拟文件: https :
用法,应该是这样的:
NodeVM.file('/customfs/main.js', {
require: {
external: true,
root: '/customfs/', // restrict local requires to within the custom fs
},
customfs: {
getFileContents: (filename) => /* handle /customfs/ file read */,
exists: (filename) => /* ... */,
isDirectory: (filename) => /* ... */
}
})
@bartjoyce我需要同样的东西! 您的链接已损坏,您是否将其移动到某个地方?
此问题已自动标记为陈旧,因为它最近没有活动。 如果没有进一步的活动发生,它将被关闭。 感谢你的贡献。
最有用的评论
有点相关:我正在为用户提交的代码使用自定义文件系统。 有没有一种方法可以手动处理本地需求,例如
require('./otherUserSubmittedFile')
,从自定义文件系统中获取文件并将其交给vm2
然后沙箱?更新:
非常粗糙,但已经实现了一些自定义/虚拟文件: https :
用法,应该是这样的: