Chrome Devtools - 使变量可跨多个 Windows

Chrome Devtools - Make variable accessible across Multiple Windows

有没有办法让一个变量可以跨多个 windows 访问?我想使用来自不同域的 Chrome Devtools 控制台。谢谢~

你不能那样做。您需要某种服务器端组件才能拥有 "sharable" 变量。

但是,您可以使用 PouchDB 之类的东西来连接。

来自文档的示例:

var db = new PouchDB('dbname');

db.put({
  _id: 'dave@gmail.com',
  name: 'David',
  age: 69
});

db.changes().on('change', function() {
  console.log('Ch-Ch-Changes');
});

假设您在同一个域中,它将起作用。

我不认为你可以使用内置的开发工具来做到这一点,但你可以使用 Tampermonkey 来实现它,这是一个允许跨域存储(以及许多其他东西)的扩展。对其进行设置,使其在 window 上公开用于设置和获取数据的接口:

// ==UserScript==
// @name             Shared Data
// @include          *
// @grant            GM_setValue
// @grant            GM_getValue
// ==/UserScript==

unsafeWindow.set = (prop, val) => GM_setValue(prop, val);
unsafeWindow.get = (prop) => GM_getValue(prop);

然后您可以在控制台中输入 setget 以轻松地跨域设置和获取值: