由于最近做毕设,想做‘记住我’这种自动登录功能,然后查了一番资料后,想法就慢慢由简单的cookie变成session持久化+cookie。
然后选择koa-session2来实现。
一开始跟着官网模板写好后,发现redis里没有session,cookie亦没有设置,后来看了看源码,发现koa-session2的逻辑是这样的: 一开始从cookie中取出sessionid,如果session改变了,最终才会去更新redis和设置cookie。
后面就好办了,那在用户登陆后,就改变ctx.session
对象,就能成功更新redis,但是新问题又出现了,那就是cookie设置,并没有操作到浏览器中,然后才发现是因为采用的前后端分离,由于跨域,cookie就被抛掉了。
至于cookie自动登录,就是一波逻辑和安全的思想了,可以借鉴这里。