This article mainly introduces relevant information about the detailed introduction of the WeChat Mini Program login process. Friends who need it can refer to
WeChat Mini Program Login Process
1: What are session_key and openId? session_key
The official description is:
session_key is the key generated by the WeChat server for encrypting and signing user data
The purpose of session_key
(1) Decrypt the "ciphertext in user information" obtained through the wx.getUserInfo() interface.
(2) "Process it slightly" and use it to maintain the login state of the applet.
"A little processing" is roughly as follows:
(1) Generate a random number (officially called it 3rd_session)
(2) Treat this random number as The key of session, session_key + openid is value.
That is: session[3rd_session]=session_key+openid
openIdopenId: the user’s unique identifier
That is: each WeChat user in your mini program unique identifier.
2: How to obtain session_key and openId. The official HTTP interface is provided:
https://api.weixin .qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code
Getting steps:
(1) Get appid, secret, js_code
(2 ) Replace the APPID, SECRET, and JSCODE of the above interface address with appid, secret, and js_code respectively. Leave the others unchanged and assemble them into a complete address.
For example:
3: In "Open this address in the browser" or "Simulate the browser in the background" GET execute this address" can return the following JSON data (including openid, sessionkey)
WeChat applet obtains session_key and openId (encryption, decryption, signature series)
Summary: From It can be seen from steps 1, 2 and 3 that as long as the appid, secret and js_code are obtained, the session_key and openId can be obtained
##4: Obtaining the appid and secret
5: How to get js_code to call wx. The login() interface can obtain the login credentials (js_code)
WeChat applet obtains session_key and openId (encryption, decryption, signature series)6: Summarize the entire session_key acquisition process
(1) Register the WeChat applet, log in to the background and obtain the appId and secret (key) in the settings(2) Call wx. The login() interface obtains the login credentials js_code
(3) Calls the wx.request() interface to send the js_code to the server background
(4) In the server background, the appId, secret, and js_code
are known