這篇文章給大家分享的是有關微信小程序如何結合ThinkPHP5授權登陸后獲取手機號的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
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授權登陸后獲取手機號”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。