在脚本之外访问 GM_getValue

Mat*_* M. 2 tampermonkey

基本上就是问题标题。这将使我受益匪浅。我希望能够访问GM_getValue用户脚本之外的内容以进行调试,或者至少访问值和名称本身。

我在 Windows 10 上使用 Chrome。

wOx*_*xOm 5

  • 最新的 Tampermonkey beta(以及最终的普通 Tampermonkey)在其仪表板脚本编辑器的Storage选项卡中显示 GM 值。

  • 可视化方法:使用Storage Area Explorer扩展:

    1. 打开 Tampermonkey 仪表板页面并通过F12或调用 devtoolsCtrlShifti
    2. 在“存储区域资源管理器”面板中,滚动到底部@uid#以按名称查找脚本,然后在@st#具有该 UID 的键中查找其数据:

      美国汽车工程师学会


  • 转储到控制台:

    一次性设置:snippet在 devtools - Sources - Snippets 子面板中添加一段新代码并保存:

    function dumpGM_data(scriptName) {
        chrome.storage.local.get(null, data => {
            const UID = Object.keys(data).find(k => k.startsWith('@uid#') &&
                                                    data[k].value == scriptName);
            if (UID)
                console.log(data[UID.replace('@uid', '@st')].value.data);
        });
    }
    
    Run Code Online (Sandbox Code Playgroud)
    1. 打开 Tampermonkey 仪表板页面并通过F12或调用 devtoolsCtrlShifti
    2. 打开并运行该代码片段:CtrlEnter- 它将一直可用,直到您关闭仪表板页面
    3. 在控制台中调用它:

      dumpGM_data('SE Preview on hover')
      
      Run Code Online (Sandbox Code Playgroud)

  • 直接检查/转储/编辑数据库文件:

    使用您可以在 Tampermonkey beta中的Chrome用户配置文件目录ldb下的数据库文件中找到(或自己编译)的任何 LevelDB 工具。Local Extension Settings/dhdgffkkebhmkfjojejmpbldmpobfkfoLocal Extension Settings/gcalenpjmijncebpfijmoaglllgpjagf