微信小程序--手机号解密!必成功!!!

先上代码哈,希望你看完别走;1.点赞;2.留言说一下我的问题。欢迎来稿

## 看我的这个篇文章你肯定能做出来,并且能非常简单的获取原理,并教你在哪里应该如何去融合自己项目 ##

1.创建解密类WxPhoneUtil 
public class WxPhoneUtil {
/**
* TODO:在这里你需要注意了:你需要对整个返回的String做处理,把需要的那个手机号拿出来就ok了,你可以打印一下这个返回值然后处理,因为处理方式很多,我的处理方式不一定适合大家自身的习惯,所以这里改动了一下
*/ 
   public string getPhoneNumberBeanS5(String decryptData, String key, String iv) throws Exception {
   /*
   *这里你没必要非按照我的方式写,下面打代码主要是在一个自己的类中 放上decrypts5这个解密工具,工具在下方有代码
   */
         String resultMessage = 自己的类对象.decryptS5(decryptData,"UTF-8",key,iv);
        return resultMessage;
    }


}
2.这里用到一些自定义工具,你放哪里都行,自己创建个类就行
    /**
     * 解密工具直接放进去即可
     */
    public static String decryptS5(String sSrc, String encodingFormat, String sKey, String ivParameter) throws Exception {
        try {
            BASE64Decoder decoder = new BASE64Decoder();
            byte[] raw = decoder.decodeBuffer(sKey);
            SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES");
            IvParameterSpec iv = new IvParameterSpec(decoder.decodeBuffer(ivParameter));
            Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
            cipher.init(Cipher.DECRYPT_MODE, skeySpec, iv);
            byte[] myendicod = decoder.decodeBuffer(sSrc);
            byte[] original = cipher.doFinal(myendicod);
            String originalString = new String(original, encodingFormat);
            return originalString;
        } catch (Exception ex) {
            return null;
        }
    }
3.下面我们要开始自己调用就ok
得到处理后的手机号就Ok啦 WxPhoneUtil 实例化对象.getPhoneNumberBeanS5();
  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 31
    评论
在Taro开发微信小程序中,如果你需要获取用户的手机号码,可以按照以下步骤进行操作: 1. 首先,确保在微信公众平台上已经设置了小程序获取用户手机号的权限。你可以在小程序管理后台的"开发-开发设置-接口设置"中找到相关设置。 2. 在Taro的页面或组件中,引入微信小程序的API:通过`import Taro from '@tarojs/taro'`引入微信小程序的API。 3. 调用`Taro.login()`方法获取用户登录凭证code,用于后续的手机号授权验证。 4. 在获取到code后,调用`Taro.getUserInfo()`方法获取用户信息,包括手机号码。示例代码如下: ```javascript Taro.login().then((loginRes) => { if (loginRes.code) { Taro.getUserInfo().then((userRes) => { const { encryptedData, iv } = userRes.userInfo // 在这里可以将encryptedData和iv发送到后端解密获取手机号码 // 也可以直接在前端解密获取手机号码 }).catch((err) => { console.log(err) }) } else { console.log('登录失败') } }).catch((err) => { console.log(err) }) ``` 5. 在上述代码中,`encryptedData`和`iv`是用户信息的加密数据,你可以将它们发送到后端进行解密,或者在前端使用相应的解密算法解密获取手机号。 需要注意的是,获取用户手机号的过程需要用户授权,并且用户须在微信设置中允许小程序获取手机号的权限。如果用户未授权或未设置权限,将无法获取手机号。 希望这些信息对你有所帮助!如果你还有其他问题,请继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值