Tho*_*oby 9 visual-studio-code vscode-extensions
我为 VS 代码编写了一个语言服务器扩展。为了缩短启动时间,我想缓存一些全局状态。我正在努力寻找一个安全的、用户透明的位置。
我发现了以下四个选项,但似乎都不合适:
ExtensionContext.extensionPath: 这几乎是完美的。对用户显而易见,安全的沙盒空间。但是,它在扩展更新时被擦除。ExtensionContext.storagePath:这不是全局的,用户很难清除,因此很快就会使用 GB 的存储空间。ExtensionContext.globalState:将 300MB 的二进制数据放入 JSON 字典存储似乎很糟糕。%UserData%/linux/OSX 等效项:在不受控制的一般用户空间中添加和删除文件是我宁愿避免的风险。存储这些数据的合适位置在哪里?
增加了 2019 年 1 月发布的 VS Code ExtensionContext.globalStoragePath,这是VS Code的全球版本storagePath
扩展可以在其中存储全局状态的绝对文件路径。该目录可能不存在于磁盘上,创建取决于扩展。但是,父目录保证存在。
https://code.visualstudio.com/updates/v1_31#_global-storage-path
| 归档时间: |
|
| 查看次数: |
2094 次 |
| 最近记录: |