精華
原創聲明:本文為作者原創,未經允許不得轉載,經授權轉載需注明作者和出處
官方說明為:
session_key是微信服務器生成的針對用戶數據進行加密簽名的密鑰
session_key的用途
1:對wx.getUserInfo()接口得到“用戶信息中的密文”進行解密。
2:對它“稍作處理”,用作維護小程序的登錄態。
“稍微處理”大體為:
1:生成一個隨機數(官方把他叫做3rd_session)
2:把這個隨機數當session的key,session_key + openid為value。
即:session[3rd_session]=session_key+openid
openId:用戶唯一標識
即:每個微信用戶在你的小程序的唯一的標識。
1:獲得appid
,secret
,js_code
2:用appid
,secret
,js_code
分別替換如上接口地址的APPID
、SECRET
、JSCODE
,其他不變,組裝成完整的地址。
例如:
3:在“瀏覽器打開此地址”或者“在后臺模擬瀏覽器的GET執行此地址”就可返回如下的JSON數據(包含openid、sessionkey)
從1,2,3步驟可知,只要獲得appid,secret,js_code就可得到session_key和openId
appid為小程序ID
secret為小程序密鑰(AppSecret)
小程序后臺登錄網址:https://mp.weixin.qq.com/
打開小程序后臺網址、注冊、登錄后,按如下圖所示就可找到你的AppID和AppSecret。
目前小程序個人不能注冊,開放注冊范圍:企業、政府、媒體、其他組織;
當然用這個辦法,個人也能注冊了。傳送門:
https://my.oschina.net/imhoodoo/blog/780901
調用wx.login()接口就可獲取登錄憑證(js_code)
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
END…