收藏
回答

用户登录获取到的session_key不到10分钟就失效,导致调用需要虚拟币接口失败

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小游戏 Bug midas.pay 微信安卓客户端

用户登录完成后,第一次调用扣除游戏币接口,渠道接口正常返回, 第二次及之后调用扣除游戏币接口 返回{"errcode":90009,"errmsg":"mp_sig error hint: [_DPuka05571089]"}


访问https://api.weixin.qq.com/wxa/checksession校验session_key是否失效,返回已失效。


从用户登录拿到session_key期间不超过10分钟。


问题:用户session_key为何会失效,从而导致调用扣除虚拟币接口失败。

请求数据:

请求时间:

2020-01-06 21:30:15.313

渠道返回数据:

{"errcode":90009,"errmsg":"mp_sig error hint: [EATGRa04151550]"},

用户id:

o049Z5M1kcJilRLVuEtoLdJPXlqU

请求订单号:

2020010613295260155882

登录获取到的session_key:

aYm4tRrjsUra53AAkToBvA==

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

2 个回答

  • 淼淼
    淼淼
    2020-01-07

    过期时间并没有明确规定,可以使用wx.checkSession()判断是否过期,过期重新获取后执行流程,未过期正常执行流程。

    2020-01-07
    有用 1
    回复 6
    • 奈何匆促
      奈何匆促
      2020-01-07
      每次支付前都判断session_key是否过期吗?
      2020-01-07
      回复
    • 淼淼
      淼淼
      2020-01-07回复奈何匆促
      可以在使用时先判断session_key是否过期,就可以避免这样问题了!我也一直这样用的,目前还没出问题。
      2020-01-07
      回复
    • 奈何匆促
      奈何匆促
      2020-01-07
      现在是我们某款游戏的session_key很多用户频繁 刚登录就失效。如果重新登录仍然失效,频繁调起登录吗?
      2020-01-07
      回复
    • 奈何匆促
      奈何匆促
      2020-01-07回复淼淼
      好,我们试一下
      2020-01-07
      回复
    • 奈何匆促
      奈何匆促
      2020-01-07回复淼淼
      session_key的过期时间不透明,那怎么测试这个流程啊?
      2020-01-07
      回复
    查看更多(1)
  • jack
    jack
    2020-01-07

    个人感觉是你accesstoken失效了 是不是玩家充值的时候 用另外的玩家也请求了导致accesstoken刷新了

    2020-01-07
    有用
    回复 5
    • 奈何匆促
      奈何匆促
      2020-01-07
      我access_token是统一管理的,所有用户,包括测试与线上都用的同一个
      2020-01-07
      回复
    • jack
      jack
      2020-01-07回复奈何匆促
      好吧 我们没有遇到过session_key 10分钟失效的情况,除非玩家又登录了一次导致这个值刷新了
      2020-01-07
      回复
    • 奈何匆促
      奈何匆促
      2020-01-07回复jack
      感觉像微信渠道问题,登录的时候拿到的access_key是无效的,偶尔会发生
      2020-01-07
      回复
    • 奈何匆促
      奈何匆促
      2020-01-07
      说错了,session_key
      2020-01-07
      回复
    • jack
      jack
      2020-01-07回复奈何匆促
      登录如果成功的话应该不太会出现这个情况 可以看下是不是解析出错了
      2020-01-07
      回复
登录 后发表内容
问题标签