CNode

请教~node使用redis存储session

问答
Iiori2882发布于8 年前最后回复8 年前3 回复3216 浏览0 收藏

楼主开发经验不长时间,最近有个小项目上线测试,使用PM2集群模式启动项目(之前本机测试一直单机测试,没用PM2),发现用户登录输入了正确的用户名密码之后,还反复跳转登录页面,通过网络查询得知:因为session在集群模式下没有共享才导致这个问题的发生....正好微信公众号的token是用redis缓存的,发现网上有篇文章 <nodejs+express+express-session+redis 实现登陆验证>,内容如下: redis.js:

111.jpg

app.js:

222.jpg

第一次登陆:

333.jpg

需要登陆验证的路由:

5555.jpg

麻烦大家帮忙看看,这么配置就可以解决session在集群模式下的正常访问么?根据上面的教程,,在使用redis之后,session的使用还是和之前一样用req.session,和我之前想的不一样,之前我以为得自己向redis里写入东西呢!比如 set sessionID XXXX set USER XXXX,,,在获取的时候 if(get sessionID XXXX==YYY),是因为引入了 const session = require('express-session')这个包,才达到教程里的效果么?

查看回复

回复 (3)

I
iori2882#1·8 年前

麻烦帮忙看看

Z
zswnew#2·8 年前

为啥不用用jsonwebtoken

来自酷炫的 CNodeMD

I
iori2882#3·8 年前

结贴:弄明白了,原因是引入了connect-redis这个模块,由他来连接redis进而管理session,就达到了还是使用req.session的方式读取redis里的session

参与回复
登录后即可参与回复。登录