小程序中登录步骤如下:
① 小程序前端使用wx.login() 从微信服务器获取code 【接】
② 小程序前端将code 发送给开发者服务器,开发者服务器利用appId、appSecret 和code 向微信服务器换换取用户openId 和session_key 【送】
③ 开发者服务器自定义登录态并将其与openId 和session_key 关联起来然后写session
④ 开发者服务器将登录态返回给小程序前端,小程序前端使用wx.setStorageSync() 将登录态保存起来 【接】
⑤ 小程序前端在执行业务请求时将登录态发送给开发者服务器,以便开发者服务器知道当前操作的用户是哪位。【送】
也就是说,在整个过程中小程序前端是拿不到用户openId 的,它只能通过开发者服务器发给它的登录态来告诉服务器当前用户的信息。登录过程中涉及session_key 和unionId,于是又引出了下面的问题。</