node.js - 如何阻止 Electron 窗口共享 cookie?

标签 node.js electron

我正在 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。

最佳答案

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

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

let counter = 0

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

或任何更复杂的方式。

关于node.js - 如何阻止 Electron 窗口共享 cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55344701/

相关文章:

javascript - 如何解决错误 TypeError : self. _form.on 不是函数?

node.js - 没有为 channel 注册的处理程序 - Electron IPC 处理/调用

javascript - Node JS 和带有 Express js 的自定义模块

javascript - Node 未找到 html 中包含的 js 文件

javascript - 如何删除Javascript创建的类?

node.js - Express.js request.body 不工作

node.js - 在 Meteor 中使用 gzip

javascript - 有没有一种方法可以在Electron中为子窗口设置属性?

javascript - Electron 版Firebase Electron 邮件/密码身份验证

macos - Info.plist表示iOS应用程序,但提交.pkg