如何在node-webkit中保留cookie

Dim*_*bas 9 node.js node-webkit

我希望使用node-webkit创建一个应用程序,它可以轻松地打开远程Web应用程序.Web应用程序具有一些基于cookie的身份验证.考虑到用户已成功登录,如何保留所需的cookie,以便下次运行应用程序时,将对用户进行身份验证?

Naz*_*nko 9

  1. 您可以使用此说明获取身份验证cookie:https: //github.com/nwjs/nw.js/wiki/window#windowcookies

  2. 使用首选方法保存:https: //github.com/nwjs/nw.js/wiki/Save-persistent-data-in-app

  3. 在下一次启动时,只检查该记录是否存在,并使用方法从1设置cookie.

应该是这样的:

var gui = require('nw.gui');
var win = gui.Window.get();

function login() {
   var opts = {};
   if(localStorage.auth) {
      opts.cookies: [
           'Auth': localStorage.auth
      ];
   }

    someRequest.get(opts, function(result) {
        if(result)
          localStorage.auth = win.cookies.get('auth');
    });
}
Run Code Online (Sandbox Code Playgroud)


Mah*_*ahn 1

截至 2018 年,NW.js 默认保留 cookie 和其他持久性浏览器数据。这些存储在%LOCALAPPDATA%/name-in-manifest/Windows 或同等版本中,具体取决于操作系统。应用程序本身不需要任何操作,您不必在本地存储中手动保留 cookie 数据。