最近在研究微信小程式怎麼玩的。接觸後發現好多的坑。 本文就教大家微信小程式取得使用者資訊如何實現。
例如在瀏覽器中我們可以透過document.getElementById 取得到頁面的DOM物件。而在微信小程式中是取得不到DOM對象的。 document.getElementById() 直接報錯 getElementById not function 我也是醉了。不支援這個好多有趣的功能不能實現了。
言歸正傳,我談下獲取用戶資訊的感想。
有兩種取得使用者資訊的方案。
1、不包含敏感資訊openId 的json物件(包含:nickname、avatarUrl等基本資訊)
2、包含敏感資訊openId的基本資訊。
第一種取得方案
1、先呼叫wx.login()介面讓使用者授權驗證,也就是我們肉眼觀察到的,你是否對xxxxx授權這種資訊。
2、使用者成功授權後,呼叫wx.getUserInfo() 介面取得使用者資訊。
完整程式碼如下
1 2 3 4 5 6 7 8 9 10 |
|
第二個比較複雜了,需要與背景互動才能取得userInfo,但這個方案所獲得的資料是完整的(包含openId)。
1、呼叫wx.login()介面 授權 在success 成功函數的參數中包含code。
2、呼叫wx.getUserInfo()介面success 函數中包含encryptedData、iv
3、將上述參數傳給後台解析,產生userInfo
程式碼如下
js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
|
後台解析
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
|
getUserInfo function 其中wxBizDataCrypt.php 就是微信官方提供的素材包
curlHttp 函數是一個自定函數該函數的源碼查看我的這篇文章curlHttp
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
自己寫的小工具request.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 |
|
app.globalData.host 就是網域位址如https://xxxxx.com;
相關推薦:
Thinkphp5如何實作微信小程式取得使用者資訊介面的案例
以上是微信小程式取得使用者資訊如何實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!