我丢失了网站 (Chrome/macOS) 上的表单数据,并且由于启用了 SIP,无法按照 Linux/Mac 的推荐解决方案进行操作(相关评论)。但是,关联的页面/选项卡仍然打开。
通过一些调试,我能够恢复丢失的数据。我将发布我的步骤作为可能的答案(但除非没有更好的选择,否则不会标记为已接受)。
我的问题:有没有更好/更简单的方法来获取丢失的数据?(不需要时光机回到事件发生之前并安装浏览器插件/禁用 SIP?)
答案1
不要关闭丢失数据的标签。
- 在受影响的选项卡 (F12) 上打开 Chrome 开发工具。
- 点击 ”记忆“ 标签。
- 选择 ”堆快照”。
- 点击 ”拍摄快照“ (可能还要等一下)。
- 在左侧导航栏上选择新创建的堆快照(可能名为“快照 1”)。
- 在里面 ”构造函数” UI 部分,找到并展开“(细绳)”下拉菜单(或设置“类过滤器“ 到 ”细绳”)。
- 点击 ”显示所有
{int}
”按钮(您需要向下滚动顶层字符串)。
- 现在到了困难的部分:
- 按 ctrl/cmd + f 搜索您记得的字符串的某些部分(尝试仅使用 0-9/az 字符,并靠近字段的开头 - 因为字符串被截断)。
- 您可能会(或可能不会)找到您要查找的字符串。
- 如果没有,请尝试各种搜索参数(或手动滚动浏览所有字符串结果)。
- 如果您确实找到了搜索结果,它可能不是您要查找的完整字符串。
- 一旦你选择了找到的字符串(在“构造函数“ 部分):
- 在里面 ”目的”部分,将鼠标悬停在第一个顶层蓝色变量名称上(可以命名任何内容)。
- 应该会出现一个带有完整字符串值的弹出窗口。
- 如果没有,您可能需要向下滚动“目的”部分正在寻找另一个顶级蓝色变量进行检查(通过将鼠标悬停在其名称上)。
- 双击要突出显示的字符串值,然后复制结果。