1.在我們授權登陸后會獲取到用戶的 sessionKey 這個是獲取手機號不可分割的一部分
上代碼
wxml:
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">獲取手機號</button>
js:當我們在調用這個方法的時候可以在控制臺輸出一下 e 下方用紅框框起來的兩個也是獲取手機號不可分割的一部分
getPhoneNumber: function (e) { var that = this; console.log(e.detail.errMsg == "getPhoneNumber:ok"); if (e.detail.errMsg == "getPhoneNumber:ok") { wx.request({ url: 'http://www.phone.com/test/Seek/getPhone', data: { encryptedData: e.detail.encryptedData, iv: e.detail.iv, sessionKey: that.data.session_key, }, method: "post", success: function (res) { console.log(res); } }) } },
然后就是Think PHP 5 的后臺代碼了,再寫代碼前 需要先下載一個官方提供的文件夾
下載好后有四種語言的 我們只要PHP的
將PHP這個文件夾放到你的 Think PHP 5 的 app 目錄下,記得更改文件夾名字,就像這個樣
接下來 給 WXBizDataCrypt.php 增加命名空間和引入ErrorCode.php 文件
接下來 在你的控制器中 引入 WXBizDataCrypt.php
use app\libs\WXBizDataCrypt;
然后就可以寫 PHP 代碼了
public function getPhone(){ $encryptedData = input('encryptedData'); $iv = input('iv'); $sessionKey = input('sessionKey'); $appID = config('appID'); $data = null; $pc = new WXBizDataCrypt($appID, $sessionKey); $errCode = $pc->decryptData($encryptedData, $iv, $data ); $data = json_decode($data,true); return json($data); }
最后在回到小程序運行一遍 就可以看到了
到此這篇關于微信小程序結合ThinkPHP5授權登陸后獲取手機號的文章就介紹到這了,更多相關小程序 獲取手機號內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://blog.csdn.net/m0_62199749/article/details/121458904