微信小程序 獲取unionid解決方案

其實個人是安卓開發,無奈公司需求,所以我個人也自學了小程序,目前自己獨立開發一款小程序,原本授權登錄已經做好了,沒想到又考慮安卓 、ios 三方登錄功能,因此應用都需要同步,不得不用到unionid,這可不又給我出難題了,在網上百度的說需要後端解密encryptedData 數據,於是和後端多溝通,他說沒發解密,這就難到我了。

UnionID機制說明 
unionid來區分用戶的唯一性,在相同微信開放平臺帳號下的移動應用、網站應用、小程序、公衆號,用戶的unionid是唯一的。也就是說,同一用戶,對同一個微信開放平臺下的不同應用,unionid是相同的。

OpenID機制說明

OpenId是用來區分應用的唯一性,在相同微信開放平臺賬號下不用的應用,其unionid相同,OpenId而不同,比如說同一個微信開放平臺綁定了多個小程序應用,每個應用的OpenId是不相同。

UnionID獲取途徑
綁定了開發者帳號的小程序,可以通過下面 3 種途徑獲取 UnionID。

調用接口 wx.getUserInfo,從解密數據中獲取 UnionID。注意本接口需要用戶授權,請開發者妥善處理用戶拒絕授權後的情況。

如果開發者帳號下存在同主體的公衆號,並且該用戶已經關注了該公衆號。開發者可以直接通過 wx.login + code2Session 獲取到該用戶 UnionID,無須用戶再次授權。

如果開發者帳號下存在同主體的公衆號或移動應用,並且該用戶已經授權登錄過該公衆號或移動應用。開發者也可以直接通過 wx.login + code2Session 獲取到該用戶 UnionID ,無須用戶再次授權。

百度的解決方法有幾種:

1.微信小程序綁定微信對應的微信服務號

2.小程序必須綁定在微信開放平臺上,不綁定是沒有的(PS:綁定開放平臺需要開發者資質認證,認證收費的奧)

解密數據的話,在上篇文章已經寫過了,這邊就不寫了

代碼如下:

可能後期需要給一下了,因爲我們申請了新的小程序和服務號

有點累了,下班了

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章