在Electron App中设置会话

时间:2017-10-02 00:22:39

标签: javascript angularjs node.js session electron

好的,所以我对会话非常非常新,并且正在尝试在Electron应用程序中实现登录/注销用户系统。

我有一个SQLite数据库,现在我通过Angular控制器函数将用户名和密码传递给另一个处理数据库事务的JavaScript文件(并检查哈希和所有bcrypt爵士乐)。然后该函数将必要的变量返回给Angular控制器。

我一直尝试使用$channels[] = $channel_name; .... if (in_array($channel_name, $channels)) // skip this one 在网上找到的几种不同的解决方案,但我必须说实话,我还有一些事情。只是没有得到,似乎没有任何工作正常。所以我在设置这件事时遇到了几个问题。

(1)我在哪里创建会话?在Angular express-session函数中?还是在数据库交易功能? (或完全在其他地方?)。 [当我说创建函数时,我的意思是:

controllers.js

(2)创建会话后,我是否将它传递到某个地方以使角色var app = express() app.set('trust proxy', 1) // trust first proxy app.use(session({ secret: 'keyboard cat', resave: false, saveUninitialized: true, cookie: { secure: true } })) 中可以访问变量?

(3)如果我们通过这些变量,我该如何访问它们?所以显示的代码通常是:

controllers.js

但是如何分配,说// Use the session middleware app.use(session({ secret: 'keyboard cat', cookie: { maxAge: 60000 }})) // Access the session as req.session app.get('/', function(req, res, next) { if (req.session.views) { req.session.views++ res.setHeader('Content-Type', 'text/html') res.write('<p>views: ' + req.session.views + '</p>') res.write('<p>expires in: ' + (req.session.cookie.maxAge / 1000) + 's</p>') res.end() } else { req.session.views = 1 res.end('welcome to the session demo. refresh!') } }) 然后将其打印到控制台?

对这些问题抱歉,我真的认为我在这里缺少某种步骤而且不太确定如何解决它。

(代码来自https://github.com/expressjs/session,虽然我也在这里尝试了指南:https://stormpath.com/blog/everything-you-ever-wanted-to-know-about-node-dot-js-sessions

0 个答案:

没有答案