Erioifpuderio.hashnode.dev·Nov 9, 2024Bilibili-Evolved 功能拆解 ① - 沙箱背景 Bilibili Evolved 是一个模块化的 B 站 UserScript,我对这项目感兴趣的地方有两个点,一是沙箱的实现,二是插件系统的实现,本文主要是研究他的沙箱方案。 沙箱的实现 首先定位到沙箱的代码 load-feature-code.ts: export class LoadFeatureCodeError extends Error {} /** * feature 代码运行沙箱 */ type CodeSandbox = { /** * 在沙箱中执行代码 ...代码解析