Bagaimanakah program mini mendapatkan nombor telefon mudah alih pengguna? Artikel berikut akan memperkenalkan kepada anda kaedah mendapatkan nombor telefon mudah alih pengguna dalam pembangunan applet WeChat Saya harap ia akan membantu anda!
Apabila anda biasanya menggunakan program mini WeChat pihak ketiga, anda selalunya perlu mendapatkan telefon mudah alih WeChat nombor. , seperti yang ditunjukkan dalam rajah di bawah:
[Cadangan pembelajaran berkaitan: Tutorial Pembangunan Program Mini]
Bagaimana ini dilaksanakan? Berikut adalah rekod cara mendapatkan nombor mudah alih WeChat.
**Nota:** Anda perlu mempunyai akaun program mini WeChat dan akaun ini diperakui oleh perusahaan. (Fungsi mendapatkan nombor telefon bimbit tidak berkuat kuasa untuk nombor program mini peribadi)
Kemudian mari kita mulakan perjalanan pengaturcaraan untuk mendapatkan nombor telefon bimbit bersama-sama.
2.1 Buat projek baharu
dalam app.json fail Tambah "pages/getphonenumber/getphonenumber", seperti yang ditunjukkan di bawah:
2.2 Sediakan kelas alat penghuraian teks sifir
Dapatkan nombor telefon mudah alih melalui antara muka yang disediakan oleh applet WeChat Data yang dikembalikan disulitkan, jadi data yang disulitkan yang dikembalikan perlu dinyahsulit.
1) Cipta terminal baharu
Dalam alatan pembangun WeChat, klik "Terminal" -> "Terminal Baharu" seperti yang ditunjukkan dalam rajah di bawah:
2) Laksanakan arahan npm init
//Selepas melaksanakan npm init, anda perlu memasukkan beberapa maklumat, cuma terus klik butang "Enter " key
Seperti yang ditunjukkan di bawah:
3) Laksana npm install crypto-js --save , npm install js-base64 --save
Seperti yang ditunjukkan di bawah:
4) Bina npm
dalam menu pembangunan WeChat alat Pilih "Alat" -> "Bina npm" dalam bar dan binaan selesai.
2.3 Pelaksanaan kelas analisis
Buat fail WXBizDataCrypt.js baharu dalam folder utils projek tersebut.
var CryptoJS = require("crypto-js"); var Base64 = require("js-base64"); //解析加密数据 function decode(sesionKey,iv,data) { var key = CryptoJS.enc.Base64.parse(sesionKey); var iv = CryptoJS.enc.Base64.parse(iv); var decrypt = CryptoJS.AES.decrypt(data, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); return Base64.decode(CryptoJS.enc.Base64.stringify(decrypt)); } module.exports = { decode }
2.4 Dapatkan pelaksanaan kod nombor telefon
2.4.1 pelaksanaan getphonenumber.js
Nota: appId dan rahsia perlu diganti dengan applet anda sendiri
// pages/getphonenumber/getphonenumber.js const WXBizDataCrypt = require('../../utils/WXBizDataCrypt'); Page({ /** * 页面的初始数据 */ data: { phoneNum:'', sessionKey:'', openId:'', }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { this.getSessionKey(); }, getPhoneNumber: function(e){ if (e.detail.errMsg == "getPhoneNumber:fail user deny") { wx.showToast({ title: '拒绝授权,无法获取用户手机号码!', }) return; } //解密数据获取手机号码 this.decryptData(this.data.sessionKey,e.detail.iv,e.detail.encryptedData); }, //获取SessionKey getSessionKey: function(){ wx.login({ success:res =>{ console.log('code:'+res.code); var data = { 'appid':'***********',//注意appId、secret需要替换为自身小程序的 'secret':'**************************', 'js_code':res.code, 'grant_type':'authorization_code' }; wx.request({ url:'https://api.weixin.qq.com/sns/jscode2session', data:data, method:'GET', success:res =>{ console.log("jscode2session result: ",res); this.setData({ sessionKey:res.data.session_key, openId: res.data.openId }) }, fail:function(res){ console.log("获取jscodeSession fail: ",res); } }) } }) }, //解密数据 decryptData: function(key,iv,encryptedData){ var processData = WXBizDataCrypt.decode(key,iv,encryptedData); console.log("解密数据: ",processData); var jsonObj = JSON.parse(processData); this.setData({ phoneNum: jsonObj['phoneNumber'] }) }, })
2.4.2 getphonenumber.wxml pelaksanaan
<!--pages/getphonenumber/getphonenumber.wxml--> <button type="primary" bindgetphonenumber="getPhoneNumber" open-type='getPhoneNumber'>获取手机号码</button> <text>获取到的手机号码:{{phoneNum}}</text>
Pada ketika ini, proses pengekodan telah selesai. Nota: Dalam keadaan biasa, mendapatkan jscode2session dilaksanakan pada bahagian pelayan Di sini saya melaksanakan semua mendapatkan sessionKey pada applet. Rujuk pautan laman web rasmi program mini:
Klik untuk mendapatkan nombor telefon bimbit:
Untuk lebih banyak pengetahuan berkaitan pengaturcaraan, sila lawati: Video Pengaturcaraan! !
Atas ialah kandungan terperinci Analisis ringkas amalan pembangunan program mini: cara mendapatkan nombor telefon mudah alih. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!