收藏
回答

关于登录态token过期处理

场景:


小程序在某个页面停留xx分钟,恰好这个期间服务端生成的自定义token过期,此时请求业务api返回403,请问改如何处理不影响此次请求呢


目前我是在封装的请求方法中,判断如果返回403,并且本地存有token的情况下,进行重新登录(获取新的token)并存入本地,但上一次的403请求并未完成,影响了此次操作


github上看了几套代码,都未见对token突然失效的处理逻辑,希望大家多多指教啊

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

2 个回答

  • 明天见
    明天见
    2019-01-10

    官方 client sdk 里 封装的 request 有重试的机制,可以参考下。

    参考:https://github.com/tencentyun/wafer-client-sdk/blob/master/lib/request.js

    2019-01-10
    有用 1
    回复 1
    • WHD
      WHD
      2019-01-10

      非常感谢分享

      2019-01-10
      回复
  • 黎😄
    黎😄
    2019-01-10

    过期了,就重新wx.login->用code到服务器获取token->使用token再执行之前的请求。

    2019-01-10
    有用 1
    回复 10
    • WHD
      WHD
      2019-01-10

      非常感谢,用新token再次请求上一次403操作的逻辑应该写在封装的request 统一拦截403 逻辑中,还是写在页面调用request的回调逻辑呢

      2019-01-10
      回复
    • 黎😄
      黎😄
      2019-01-10回复WHD

      封装好的request里。用户不会知道发生了token,底下会自动去处理过期。

      2019-01-10
      1
      回复
    • 黎😄
      黎😄
      2019-01-10回复WHD

      可以规定好某个状态是,或某个标识,代表token过期,封装好重新请求获取token再重新请求,注意不要死循环。

      2019-01-10
      1
      回复
    • WHD
      WHD
      2019-01-10回复黎😄

      非常感谢,解决了我的问题

      2019-01-10
      回复
    • 倪坤
      倪坤
      2019-04-29

      我也是这么处理的

      2019-04-29
      回复
    查看更多(5)
登录 后发表内容