收藏
回答

session_key的过期逻辑?

通过wx.login获取jscode然后后端通过auth.code2Session 换取的session_key,他的过期逻辑是怎么样的?我看文档里面说的是,只要用户一直在使用小程序,就都不会过期。

那我在小程序 使用过程中,是不是不需要去 监听session_key是否过期?只需要在小程序启动的onLaunch生命周期中,checkSession一下,如果过期重新登录一下就好了?

回答关注问题邀请回答
收藏

3 个回答

  • 槐序
    槐序
    2021-10-28

    对的 在onLaunch 里判断有没有sessionKey,就是在登录状态下,如果有则执行checkSession

        if (sessionKey) {
          wx.checkSession({
            success(res) => {},
            fail(res) => {
              wx.clearStorageSync()
              getApp().globalData.userInfo = null
              wx.navigateTo({
                url'/pages/login/login',
              })
            }
          })
        }
    


    2021-10-28
    有用 2
    回复 1
  • 十三
    十三
    04-17

    请问一下,后端服务器通过调用检查登录状态接口checkSessionKey返回当前access_token的session_key过期了,可以通过调用重置登录状态接口ResetUserSessionKey延长(或者说重置)当前回话access_token的session_key有效期吗

    之所以问这个,主要是因为我们自己有自定义的登录状态token,微信的登录状态通过我方后台服务器来维持,没有放给前端






    04-17
    有用
    回复
  • 赵津
    赵津
    2022-01-19

    那后端这么控制,用其获取的加密密钥列表,是列表里面的所有key都过期就把客户登录状态登出?还是由前端来控制?

    2022-01-19
    有用
    回复 1
    • 草料二维码
      草料二维码
      2022-02-10
      通过前端控制,每次在app.js的onLaunch里面先用checksession方法提前判断一下,缓存的sessionKey是不是过期了,过期了就重新换取以后给到后端。
      2022-02-10
      回复
登录 后发表内容