#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,其他不變,組裝成完整的地址。
例如:
#4:appid和secret的取得
appid為小程式ID
secret為小程式金鑰(AppSecret)取得方法:小程式後台登入網址: https://mp.weixin.qq.com/
注意:目前小程式個人不能註冊,開放註冊範圍:企業、政府、媒體、其他組織;
當然用這個辦法,個人也能註冊了。
微信小程式取得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接口地址為: