生活随笔
收集整理的這篇文章主要介紹了
微信小程序获取手机号 教程(不是完整的)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
注意若是個人的不能獲取到手機號沒有權限
該文檔微信寫的時候是個人的無法獲取手機號后續未測試 介意勿看 祝你們加油
首先在uni-app建一個項目
本文檔按照視頻寫的 (時間到27分鐘可以自己繼續往下看)
視頻鏈接
第二步自己注冊一個微信小程序(我也忘記我怎么注冊的貼一個網址哈哈)
微信小程序注冊
然后創建一個文件夾因為他是登陸么所以單獨拎出來(你們隨意)
然后寫復制代碼
let global={//獲取值userInfo:{openid:null,session_key:null},// 小程序的appId:'',appSecret:'',/*** 獲取opinid和sessionkey*/getOpenId:function(){var that=this;//獲取codeuni.login({provider:'weixin',success:function(res){console.log('獲取code:'+JSON.stringify(res))let code=res.code;that.getOpenIdByJs(code,data=>{that.userInfo.openid=data.openid;that.userInfo.session_key=data.session_key;});}});},// /**通過code換取對應的key(js版本 ,數據不安全)* @param {Object} code*/getOpenIdByJs:function(code,callback){// let url='https://api.weixin.qq.com/sns/jscode2session?appid='+this.appId+// '&secret='+this.appSecret+'&js_code='+code+'&grant_type=authorization_code';// uni.request({// url:url,// data:{},// 第二種寫法uni.request({url:'https://api.weixin.qq.com/sns/jscode2session?appid',data:{appid:this.appId,secret:this.appSecret,js_code:code,grant_type:'authorization_code'},success: (res) => {console.log('獲取opinid:'+JSON.stringify(res))callback(res.data);}});}};
// 導出
module.exports=global;
main.js加入 注意自己換地
// 引入 獲取小程序
import global from '@/common/global.js';
// 全局用$
Vue.prototype.$global=global;
// 登錄時自動獲取 直接調用
Vue.prototype.$global.getOpenId();
appid 和appSecret的位置
https://mp.weixin.qq.com/
到這了用微信開發工具運行一下
得到這樣的
繼續往下走
在index.vue寫
<button class="phoneLogin" type="primary" open-type="getPhoneNumber" @getphonenumber="onGetPhoneNumber">手機號一鍵登錄</button>
然后運行就看到了
悲傷那么大(因為我到這才發現我不可以獲取,想了一下還是繼續寫下去吧)
然后下載一個微信解密包
微信手機號解密包
雖然我打開他是空頁面但是他就莫名其妙的下載下來了。。
打開文件夾之后
打開node
第一個是domo可以自己看一眼或者直接往下走
把下邊的那個復制到我們的項目中
調用
/*** 獲取解密并返回* @param {Object} encryptedData* @param {Object} */getMobile(encryptedData,iv){let data=this.decoeWxData(encryptedData,iv) ;},/**微信解密* @param {Object} encryptedData 密文* @param {Object} iv 向量*/decoeWxData:function(encryptedData,iv){var WXBizDataCrypt = require('./WXBizDataCrypt.js')var pc = new WXBizDataCrypt(this.appId, this.userInfo.session_key)var data = pc.decryptData(encryptedData , iv)console.log('解密后 data: ',JSON.stringify(data) )
return data;}};
index.vue
methods:{getPhoneNumber(e){let encryptedData=e.detail.encryptedData;iv=e.detail.iv;this.mobile= this.$global.getMobile(encryptedData,iv);}}
總結
以上是生活随笔為你收集整理的微信小程序获取手机号 教程(不是完整的)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。