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

微信小程式登陸流程

高洛峰
高洛峰原創
2017-02-21 16:17:142433瀏覽

#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、
(2)以appid,secret,js_code分別取代如上。 SECRET、JSCODE,其他不變,組裝成完整的地址。
例如:

![1H5346002-0](media/14842017330009/1H5346002-0.png)

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

微信小程式登陸流程

## 


![1H5345348-1](media/14842017330009/1H5345348-1.png)

#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.moquu.com/v/372.html


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


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

![1H5344U3-3](media/14842017330009/1H5344U3-3.png)

微信小程式登陸流程


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