流程 前端调用wx.login接口获取code,然后再调用wx.getUserInfo接口获取用户的信息。 调用服务器接口,将获取到的code,rawData,signature,encryptedData,iv发送到后端。 服务器通过code获取openid和session_key 数据签名校验 解密用户敏感数据获取用户信息 Java后端实现 数据签名校验 使用sha1加密rawDate+session_key,和signature进行比对 String sha1Hex = DigestUtils.sha1Hex(wxLogin.getRawData() + sessionKey); boolean signatureResult = sha1Hex.equals(wxLogin.getSignature()); 解密用户敏感数据获取用户信息 base64解码 Java 8 内置了 Base64 编码的编码器和解码器。 // 被加密的数据 byte[] dataByte = Base64.getDecoder().decode(encryptedData); // 加密秘钥.... Java获取小程序用户信息 小程序