Rumah >applet WeChat >pembangunan WeChat >微信开发入门(十)登录态维护

微信开发入门(十)登录态维护

零下一度
零下一度asal
2017-05-24 09:58:162087semak imbas

》什么是登录态?

所谓登录态,就是程序在运行时,能够识别当前用户,能够证明自己的唯一性且合法。

我们知道,WEB服务器通过浏览器携带的cookie获取session来判断是否是同一用户(或浏览器);Restful服务通过客户端传过来唯一ID,来识别调用用户。
微信开发入门(十)登录态维护

》为什么需要维护登录态?

  • 有自身用户体系的应用

  • 用户敏感数据,只对用户可见

  • 涉及用户相关的业务,比如我的订单、个性化推荐等

》小程序登录态维护实现流程

  1. 通过wx.login获取登录态。

  2. 通过登录返回的code发送给服务器,服务器用code换取session_key和openid后。

  3. 获取session_key后一般使用缓存框架保存登录态,服务端随机生成一串唯一字符串3rdSessionId为key,session_key为value组成键值对并存到缓存当中,缓存时间视情况自行决定。

  4. 将3rdSessionId返回给客户端

  5. 客户端将3rdSessionId缓存到localStorage中,后续接口从缓存中读取3rdSessionId,传递给服务器;服务器根据3rdSessionId来判断用户身份。

  6. 如果服务器根据3rdSessionId在缓存中查找是否存在session_key,如果存在正常执行;如果不存在小程序未登录,重新从第一步流程走。

微信开发入门(十)登录态维护

以上流程是官方推荐使用的流程,并不是维护登录态的唯一途径。

另外,你也可以在小程序中使用wx.checkSession()检查登录态是否过期。如果过期重新调用wx.login接口。
session_key在微信服务器有效期是30天,建议服务端缓存session_key不超过30天。

【相关推荐】

1. 微信公众号平台源码下载

2. 小猪cms(PigCms)微电商系统运营版(独立微店商城+三级分销系统)

3. 微信人脉王v3.4.5高级商业版 微信魔方源码

Atas ialah kandungan terperinci 微信开发入门(十)登录态维护. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn