收藏
回答

微信小程序 获取手机号码有时候报错?

javax.crypto.BadPaddingException: pad block corrupted

有时候会报这个错误,有哪位大神遇到过这个问题?

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

3 个回答

  • 陈宇明
    陈宇明
    2021-03-02

    获取session_key,而sessionKey又是解密encryptedData的密钥,所以一旦我们的wx.login在wx.getUserInfo之后获取,我们redis中存储的sessionKey绝对不是当前获取encryptedData的密钥。所以更改小程序请求顺序,每次请求wx.getUserInfo之前先请求wx.login,同时生成sessionKey放入缓存。而后需要解密的时候就可以正常解密了。

    2021-03-02
    有用
    回复 1
    • 小庄梦蝶
      小庄梦蝶
      2021-06-05
      。。。wx.getuserinfo这个早就废了,毛线用
      2021-06-05
      回复
  • 有棱角的胖子
    有棱角的胖子
    2021-03-02

    好像是前端登陆态更新了,后端sessionKey还是旧的导致对称解密失败,看一下前端wx.login是不是在wx.getUserInfo之后获取,或者在接口回调中又调了wx.login刷新了登录态

    2021-03-02
    有用
    回复 1
    • 阿白
      阿白
      2021-03-02
      我调用 login 后,直接获取的手机号码
      2021-03-02
      回复
  • ㅤ国民校草ㅤ
    ㅤ国民校草ㅤ
    2021-03-02

    无能为力 但还是想尽一点力


    2021-03-02
    有用
    回复 1
    • 花臂Seven
      花臂Seven
      2021-03-31
      哈哈  笑死
      2021-03-31
      回复
登录 后发表内容
问题标签