html52.com
我爱小程序-开发者交流社区

关于token过期,以及微信保存token的问题。

问题模块
API和组件

我关于服务器验证的做法是wx.login成功时候访问服务器,在服务器生成一个token,返回到微信。这个时候吧token保存在storage。下次启动小程序的时候从storage获取token访问服务器。

现在问题是,token在服务器保存的时候设置了两个小时的过期时间,那么如果两个小时之后再打开小程序,那么本地保存的token就失效了,但是小程序本身不知道token已经失效,这就需要在下次访问服务器返回验证失败之后才能知道失效,这样返回一个错误给用户,用户在主动登录。整个流程非常不友好,这样用户长时间不使用就要不断的重新登录。

有没有比较好的解决方法呢。


我的想法是token不需要保存在storage了,app每次onlaunch的时候程序主动登录刷新token。这样做是否常见呢,新手哈,没解决过类似的问题,有经验的同志可以分享下经验吗?多谢。


网友回复

潮水:

好吧,没什么人哈,这里。

其实就是给本地缓存加上一个有效期就行了,在模块里重新定义一下api的setstorage函数。每次wx.setstorage的时候在需要保存的obj基础上扩展一个time和expire属性,然后在wx.getstorage的时候判断一下过期时间。

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付