字节小程序
开发者社区
小程序小游戏
登录
获取用户手机号-无法解析encryptedData的问题

获取用户手机号-无法解析encryptedData的问题

1867浏览作者: User7207269988141514790

报错截图或相关BUG

界面上获取手机号码按钮点击时候,小程序端先通过调用封装的tt.login获取code。 然后将encryptedData  iv和code传至我们自己服务器,
我们服务器将通过code和appid以及appsecret在字节跳动小程序请求获得sessionkey和openid。
再成功获取sessionkey后在php后台调用下面接口解密获取电话号码失败,为空
后台解密代码:

$data=openssl_decrypt(base64_decode($encryptedData,true), 'AES-128-CBC', base64_decode($sessionKey), OPENSSL_RAW_DATA, base64_decode($iv));

小程序前端代码:
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumberHandler">获取手机号码</button>
getPhoneNumberHandler(e) {
console.log("e:",e);
console.log(e.detail.errMsg);
console.log(e.detail.iv);
console.log(e.detail.encryptedData);
util.tttLogin().then(function (res) {
console.log("ttLogin res:", res)
util.getUserPhoneAsyn(e.detail.encryptedData, e.detail.iv, res.code)
.then(function (res) {
console.log("phone res:", res)
});
})
},


复现步骤

最后一次编辑于 2021年10月29日
加载中