Node Webkit(nwjs)的多个实例共享cookie

时间:2016-02-03 20:07:26

标签: node.js cookies node-webkit

我有两个运行在不同nwjs可执行文件中的nwjs应用程序。但两个应用的Cookie都存储在相同文件夹C:\Users\Nickname\AppData\Local\node-webkit中。例如,我可以从第一个应用程序访问第二个应用程序的cookie(!!!)。这令人困惑。

那么,一个应用只能使用代码win.cookies.get()从其他应用中窃取Cookie?如何分别为每个应用程序存储cookie?

1 个答案:

答案 0 :(得分:1)

您需要运行您的应用并更改data-path,如果您不想访问正在运行的参数,则可以使用child_process,为此,主应用将创建存储该应用的新应用饼干在不同的文件夹中。

var child_process = require('child_process')
var path = require('path');
var profilePath = path.join(gui.App.dataPath,Math.random());
var child = child_process.spawn(process.execPath, ["--data-path="+profilePath,"],{detached: true});

https://github.com/nwjs/nw.js/issues/3724

我建议您不要使用Cookie来保存应用数据。您可以使用文件(fs模块)。 您也可以尝试加密数据。