序言:目前该接口针对非个人开发者,且完成了认证的小程序开放(不包含海外主体)。需谨慎使用,若用户举报较多或被发现在不必要场景下使用,微信有权永久回收该小程序的该接口权限。 文档地址:https:developers。weixin。qq。comminiprogramdevframeworkopenabilitygetPhoneNumber。html 需求:授权手机号 实现方法: wxmlbuttonclassnameline1mymoneyphone11opentypegetPhoneNumberbindgetphonenumbergetPhoneNumber授权手机号button 因为需要用户主动触发才能发起获取手机号接口,所以该功能不由API来调用,需用button组件的点击来触发。 js手机号授权getPhoneNumber:function(e){console。log(e);if(e。detail。errMsg!getPhoneNumber:ok){if(e。detail。errMsggetPhoneNumber:failuserdenye。detail。errMsggetPhoneNumber:fail:userdeny){wx。showToast({title:用户取消,icon:none})}else{wx。showToast({title:e。detail。errMsg,icon:none})}}varencryptedDatae。detail。encryptedDvarive。detail。this。phonesession(encryptedData,iv);},获取手机号sessionphonesession:function(encryptedData,iv){wx。showLoading({title:加载中,mask:false});vartokenwx。getStorageSync(TOKEN);varhostHTTPREQUESTURL;wx。login({success:function(r){varparams2{};params2。coder。wx。request({url:hostapicommongetsessionkey,data:params2,method:post,success:function(rr){if(rr〔data〕〔status〕200){varsessionkeyrr〔data〕〔data〕〔sessionkey〕;wx。request({url:hostapiuserphone,method:POST,data:{sessionkey:sessionkey,encryptedData:encryptedData,iv:iv,},header:{Accept:applicationjson,Authorization:Bearertoken,},success(res3){绑定成功wx。hideLoading();if(res3。data。status200){that。setData({userInfo:res3。data。data。userinfo})}else{wx。showToast({title:res3。data。msg,icon:none})}},fail(res3){绑定失败wx。showToast({title:res3。data。msg,icon:none})}})}else{wx。showToast({title:rr〔data〕〔msg〕,icon:none})}},})}})}, php授权手机号publicfunctionphone(Requestrequest){开发者如需要获取敏感数据,需要对接口返回的加密数据(encryptedData)进行对称解密encryptedDatainput(param。encryptedData);ivinput(param。iv);sessionkeyinput(param。sessionkey);requireoncerootpath。extendwxbizdatacryptwxBizDataCrypt。pcnewWXBizDataCrypt(wechat〔routineappId〕,sessionkey);errCodepcdecryptData(encryptedData,iv,result);其中data包含用户的所有数据if(errCode!0){returnjson(网络错误,请重试,100);}else{resultjsondecode(result,true);Db::name(user)where(〔uiduserinfo〔uid〕〕)update(〔phoneresult〔phoneNumber〕,ztphoneresult〔phoneNumber〕〕);}} 获取微信用户绑定的手机号,需先调用wx。login接口。实现功能后如下 我是小程序软件开发,每天分享开发过程中遇到的知识点,如果对你有帮助的话,帮忙点个赞再走呗,非常感谢。 往期文章分享: 微信小程序授权登录适配wx。getUserProfile最新代码 小程序wx。chooseImage上传图片,支持相册选择图片或使用相机拍照