开发微信小程序时,接入小程序的授权登录可以快速实现用户注册登录的步骤,是快速建立用户体系的重要一步。这篇文章将介绍 python + sanic + 微信小程序实现用户快速注册登录全栈方案。
微信小程序登录时序图如下:这个流程分为两大部分:
小程序使用 wx.login() API 获取 code,调用 wx.getUserInfo() API 获取 encryptedData 和 iv,然后将这三个信息发送给第三方服务器。
第三方服务器获取到 code、encryptedData和 iv 后,使用 code 换取 session_key,然后将 session_key 利用 encryptedData 和 iv 解密在服务端获取用户信息。根据用户信息返回 jwt 数据,完成登录。
下面我们先看一下小程序提供的 API。
小程序登录 API在这个授权登录的过程中,用到的 API 如下:
wx.login
wx.getUserInfo
wx.chekSession 是可选的,这里并没有用到。