首頁  >  文章  >  微信小程式  >  詳解微信小程式登陸流程

詳解微信小程式登陸流程

高洛峰
高洛峰原創
2017-03-12 15:48:012182瀏覽

這篇文章主要詳解微信小程式登陸流程的相關資料,需要的朋友可以參考下

#微信小程式登陸流程

1 :session_key和openId是什麼? session_key

官方說明為:

session_key是微信服務器產生的針對使用者資料進行加密簽章的金鑰

#session_key的用途

(1)對wx.getUserInfo()介面得到「使用者資訊中的密文」進行解密。
(2)對它“稍作處理”,用作維護小程式的登入態。

「稍微處理」大體為:

(1)產生一個隨機數(官方把他叫做3rd_session)
(2)把這個隨機數當session的key,session_key + openid為value。

即:session[3rd_session]=session_key+openid

openIdopenId:用戶唯一標識

即:每個微信用戶在你的小程序的唯一的識別。

詳解微信小程式登陸流程

 2:如何取得session_key與openId官方提供了HTTP介面:

https:// api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

取得步驟:

(1)取得appid,secret, js_code 
(2)用appid,secret,js_code分別取代如上介面位址的APPID、SECRET、JSCODE,其他不變,組裝成完整的位址。

例如:

詳解微信小程式登陸流程 

#3:在「瀏覽器開啟此位址」或「在背景模擬瀏覽器的GET執行此位址」就可傳回如下的JSON資料(包含openid、sessionkey)

微信小程式取得session_key和openId(加解密、簽章系列)

總結:從1,2,3步驟可知,只要得到appid,secret,js_code就可得到session_key和openId

詳解微信小程式登陸流程

 4:appid和secret的獲得

appid為小程式ID

#secret為小程式金鑰(AppSecret)

取得方法:小程式後台登入網址:https://mp.weixin.qq.com/

#開啟小程式後台網址、註冊、登入後,如下圖就可找到你的AppID和AppSecret。

微信小程式獲得session_key和openId(加解密、簽章系列)

注意:目前小程式個人不能註冊,開放註冊範圍:企業、政府、媒體、其他組織;當然用這個辦法,個人也能註冊了。

傳送門:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=495

#5:js_code如何取得呼叫wx.login()介面就可取得登入憑證(js_code)

微信小程式取得session_key和openId(加解密、簽章系列)

詳解微信小程式登陸流程

 6:總結整個session_key所取得的流程

(1)註冊微信小程式、登入後台在設定中獲得appId和secret (密鑰)
(2)呼叫wx.login()介面取得登入憑證js_code
(3)呼叫wx.request()介面把js_code傳送到伺服器後台
(4)在伺服器後台,已知appId、secret、js_code

然後調用以下官方提供的http接口,即可返回獲取openId、session_key

官方提供了http接口地址為:

https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

#感謝閱讀,希望能幫忙到大家,謝謝大家對本站的支持!


以上是詳解微信小程式登陸流程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn