4.4. 维持登录状态

本教程最新版为 2.1,当前版本已放弃维护,请阅读最新版本!

维持登录状态

这一节我们将学习如何维持小程序登录的状态,已经能够正确登录,调用登录接口获取 JWT,并保存在小程序缓存中。但是出于安全考虑 JWT 的有效时间一般不会太长,默认的时间为 1 小时,过期之后则无法请求需要身份认证的接口。

既然用户已经登录成功,说明小程序 openid 已经绑定了 Larabbs 用户,直接调用 api.login 即可重新获取一个 JWT,所以你可能第一时间会想到,如果发现 JWT 过期,则直接重新登录,调用 api.login

但是重新登录会产生以下流程:

  1. 小程序重新调用微信服务器 wepy.login 获取 code,微信服务器使现有 session_key 失效,重新生成 session_key;
  2. 小程序调用 LaraBBS 服务器登录接口,提交 code;
  3. LaraBBS 服务器去微信服务器换取 openidsession_key,根据 openid 找到用户,保存 session_key
  4. 返回新的 JWT。

整个过程中产生了几次网络请求,因为调用了 wepy.login(),导致 ses...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
贡献者:2
讨论数量: 0

暂无话题~