koa-session源码解析
2021-03-26 13:58:51 4 举报
解析
作者其他创作
大纲/内容
CONFIG.store
ContextSession.commit()
ContextSession.valid()
把externalKey存到cookie中
ContextSession.creat(JSON)
this.prevHash = util.hash(this.session.toJSON());
code:this.session.view
yes
执行this.opts.genid(this.ctx),生成新的externalKey,
no
判断外部存储sessionID是否存在
初始化new Session
externalKey
koa-session源码解析流程图
执行this.opts.genid(this.ctx),生成新的externalKey,初始化session
判断externalKey是否存在(sessionID)
ContextSession.creat()
初始化,传入app实例,CONFIG的参数
code:this.session.view++
对CONFIG默认参数的处理
formatOpts(opts)
ContextSession.initFromCookie()
把数据存到cookie
执行下一个中间件,执行code
await next()
sess.initFromExternal();
ContextSession._shouldSaveSession()
ContextSession.get()
cookie
结束
开始
ContextSession.save()
生成一个校验码,用于_shouldSaveSession()里面校验,数据是否有更新
执行返回的session实例,判断是否是外部存储
收藏
0 条评论
回复 删除
下一页