收藏
回答

调用获取access_token接口,本地缓存2小时,使用时候频现acc未过期提示40001,何因?

{"errcode":40001,"errmsg":"invalid credential, access_token is invalid or not latest, could get access_token by getStableAccessToken, more details at https://mmbizurl.cn/s/JtxxFh33r rid: 65095df3-1bf88511-19feb514"}

调用https://api.weixin.qq.com/cgi-bin/token接口获取access_token后缓存redis,过期时间设置为接口返回的access_token,在用到access_token时候去缓存取数据,多次出现明明缓存未过期,却返回40001的情况,小程序为我们新申请的小程序,我们业务代码为单机部署,只有一个地方使用到access_token,不存在多刷的问题,这种情况是何原因?

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

1 个回答

  • 拾忆
    拾忆
    2023-09-21

    建议不要设置2小时,可以设置1小时或者1小时50分钟。

    也可以用这个接口:https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/mp-access-token/getStableAccessToken.html

    2023-09-21
    有用
    回复 3
    • 💤
      💤
      发表于移动端
      2023-09-21
      但是我们缓存token还有1400多秒接口就提示失效了😂
      2023-09-21
      回复
    • 拾忆
      拾忆
      2023-09-21回复💤
      不可能,正常只有自己刷新的时候旧的才会提前失效,所以你也可以用稳定版的接口就不担心多次刷新的问题。
      2023-09-21
      回复
    • kwep_vbn
      kwep_vbn
      2023-09-23
      我也遇到了这个问题,redis有值的情况下不存在并发请求,但是redis的ttl 还很久, 获取手机号就还是会请求过期。
      2023-09-23
      回复
登录 后发表内容