微信小程序手机授权报错:pad block corrupted

        微信小程序手机号授权登录,传参至后台解密,大概率都会成功,但是,偶尔会遇到解密失败,报错信息为: javax.crypto.BadPaddingException: pad block corrupted;在此记录一下解决方案。

更改前获取流程:

  • 通过getPhoneNumber获取了相应的加密数据
  • 然后再调用的wx.login获取code
  • 将wx.login获取的code以及 getPhoneNumber获取的数据传入后台解密进行后续操作

 更改后获取流程:

  • 第一步要先调用的wx.login获取code
  • 再通过code取到用户的session_key (本次需求并未需要获取)
  • 然后再通过getPhoneNumber获取相应的加密数据
  • 最后再用session_key,手机号的加密数据和向量解密获取手机号

需要调换一下wx.login获取code的顺序。这是因为每次调用wx.login后通过code获取的session_key都是新的,所以请求getPhoneNumber之前先请求wx.login。

另也可以通过 wx.checkSession来检查 session_key 是否失效,如果没失效正常流程;如果失效后可再次通过wx.login获取code

相关推荐

  1. 程序手机授权:pad block corrupted

    2024-04-21 12:46:03       115 阅读
  2. 程序实现用户手机授权

    2024-04-21 12:46:03       33 阅读
  3. 程序手机号码授权登录

    2024-04-21 12:46:03       29 阅读
  4. 程序开发,构建NPM解决

    2024-04-21 12:46:03       31 阅读
  5. 程序 手机授权登录 偶尔后端解密失败

    2024-04-21 12:46:03       58 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-21 12:46:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-21 12:46:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-21 12:46:03       82 阅读
  4. Python语言-面向对象

    2024-04-21 12:46:03       91 阅读

热门阅读

  1. flutter知识点--PlatformView

    2024-04-21 12:46:03       39 阅读
  2. 2024年Getx教程_Flutter+Getx系列实战教程介绍

    2024-04-21 12:46:03       39 阅读
  3. SQL load direct path load index 无效的原因

    2024-04-21 12:46:03       44 阅读
  4. 【Vue】Vue中使一个div铺满全屏

    2024-04-21 12:46:03       40 阅读
  5. 26、Lua 学习笔记之四(Lua中的基本函数库)

    2024-04-21 12:46:03       37 阅读
  6. ReactNative实现 RSC Render 的解决方案

    2024-04-21 12:46:03       136 阅读
  7. py php shell 等等 使用脚本 处理文本 名字定义

    2024-04-21 12:46:03       39 阅读
  8. Elasticsearch(2)

    2024-04-21 12:46:03       35 阅读
  9. 常用命令及简单shell语句

    2024-04-21 12:46:03       57 阅读