收藏
回答

调用wx.login获取到code再调用后台获取手机号提示 incalid code是怎么回事?

小程序端调用wx.login获取到code后,使用getPhoneNumber往后台发送encrydata,iv,code 的时候,后台发请求获取session_key的时候提示invalid code

小程序的appid和appsecret 全部都验证过绝对没有问题,就是一直提示invalid code

并且code也没有重复使用过,希望大佬能帮忙解答一下是怎么回事 T T

最后一次编辑于  2021-05-03
回答关注问题邀请回答
收藏

3 个回答

  • 哈罗哈皮
    哈罗哈皮
    发表于小程序端
    2021-05-03

    code不能重复调用,重新调旧的有可能会失效,有效期五分钟

    2021-05-03
    有用 1
    回复
  • 游戏人生
    游戏人生
    2021-05-03

    code 只能使用一次

    可能你和别人并行开发,被反复用使用了,或者代码有BUG,多次请求了~

    2021-05-03
    有用
    回复
  • 北望沣渭
    北望沣渭
    2021-05-03

    谢邀,发给后台的code只能用一次,并且,code用在 code2Session 这个接口上;而获取手机号

    button open-type=“getPhoneNumber"的时候,这里用的是session_key,是由前一步产生的,这个时候是不会抛 invalid code,据此判断是你code2session的时候没用对。

    2021-05-03
    有用
    回复 2
    • Debugger.C
      Debugger.C
      2021-05-03
      我的code没用过,直接拿到后台了,并且appid和secret我也验证过,肯定是正确的。session_key获取不到无法去解析手机号
      2021-05-03
      回复
    • 北望沣渭
      北望沣渭
      2021-05-03回复Debugger.C
      建议在真机上测试,session_key不能垮端复用,在开发者工具上获取的encrypt_data,想当然德想直接复用手机端/其他端获取的session_key去解密,这是个常见的错觉,肯定不work
      2021-05-03
      回复
登录 后发表内容