context.storagePath 为空(meta.json 除外)但缓存数据在调试时仍然可用 [REMOTE SSH]

context.storagePath is empty (except meta.json) but cached data is still available while debugging [REMOTE SSH]

我在调试我的扩展程序时确实遇到了一个非常可怕的问题。由于我使用 workspaceState 来缓存信息,因此我试图弄清楚状态通常位于何处。

ExtensionContext.storagePath 结果进入了我期待的路径 /home/<user>/.vscode-server/data/User/workspaceStorage/a002010c26b7b33d865d62202553fe33/myname.myextension

这个文件夹只包含一个meta.json。 (没有其他隐藏文件或文件夹)

但奇怪的是,缓存的数据仍然可用。有什么其他地方可以找到的想法吗?

我已经删除了整个“.vscode-server”目录,但仍然从其他地方加载缓存数据!?

我自己发现的。 缓存的数据存储在我的本地机器上(不是远程连接的计算机)。

所以即使 ExtensionContext.storagePath 指的是远程上的本地路径。可能会出现缓存数据存储在本地的情况。

在我的例子中,它是一台 windows 机器,存储路径是:

C:\Users\<user>\AppData\Roaming\Code\User\workspaceStorage\a002010c26b7b33d865d62202553fe33

我想这也可能与其ExtensionKind

有关