如何停止Electron Windows共享cookie?

时间:2019-03-25 18:54:17

标签: node.js electron

我正在电子应用程序中创建多个浏览器窗口,但是我不希望它们共享Cookie。这是我当前创建窗口的方式,

function createWindow() {
    // Create the browser window.
    let mainWindow = new BrowserWindow({ minWidth: 660, minHeight: 400, width: 1208, height: 680 })
    // setInterval(() => sendStatus(0, 'FAIL'), 5000);
    // Emitted when the window is closed.
    return mainWindow;
}

但是,当打开多个窗口时,它们之间会共享cookie。

1 个答案:

答案 0 :(得分:1)

您可以为BrowserWindow个实例定义session(或partition

不同会话中的浏览器窗口不共享cookie,因此您只需要为每个窗口定义不同的会话。喜欢

let counter = 0

function createWindow() {
  let mainWindow = new BrowserWindow({
    webPreferences: {
      session: session.fromPartition(`${counter++}`)
    }
  })
  return mainWindow;
}

或更复杂的方式。