问题域/PD-550

Electron 安全桥接

Electron Secure Bridge

通过 contextBridge 安全暴露主进程能力给渲染进程

子问题

1.安全的 IPC 通道设计

2.文件系统操作封装

3.图片存储与 base64 转换

4.数据导入导出与缓存管理

5.自定义协议注册与特权配置(secure/fetchAPI/bypassCSP/stream)

6.Web→Electron 三源数据迁移(localStorage/IndexedDB/文件系统丰富度判断)

7.导入导出事务性保护(tmpdir 备份 + 失败回滚)

各项目的解法1 solutions

Signals

横向对比

维度moyin-creator
桥接架构四命名空间 contextBridge(imageStorage/fileStorage/storageManager/electronAPI)
协议设计local-image:// 自定义特权协议,支持 fetch/stream/bypassCSP
存储分层projects/ + media/ 双目录,basePath 统一管理 + legacy 降级
迁移策略三源自动检测(localStorage/IndexedDB/文件系统)+ hasRichData 丰富度判断
数据安全导入导出含 tmpdir 备份回滚,零字节校验防空文件,路径冲突检测

最佳实践

1.contextBridge 替代 nodeIntegration 保证安全

2.按功能域分组 API(imageStorage/fileStorage/storageManager)

3.invoke 模式统一异步通信

4.自定义协议替代 IPC 实现零开销媒体加载(img/video src 直接引用)

5.文件保存后零字节校验防止空文件污染存储

6.存储路径支持 legacy 降级(basePath → projectPath/mediaPath 自动回退)

7.导入操作先备份到 tmpdir 再执行,失败自动回滚