微信小程序开发-微信登录
微信小程序开发的代码由WXML模板、WXSS样式和JS逻辑代码构成,与Vue.js很像熟悉Vue.js可以快速上手,本文跳开WXML模板和WXSS样式来讲一下每一个小程序都有的基础功能-微信登录。微信登录可借助微信的用户体系达到便捷无感的登录,极大的提升了用户体验。
首先来看一下微信小程序官网给的登录流程图

图 1 登录流程时序
从这张图上得知具体流程为
小程序端通过微信提供的接口wx.login()获取code,并将code通过http请求使用wx.requert()发送给后端服务。
服务端拿到code调用微信提供的接口auth.code2Session发送code,调用成功会收到openid和unionid,openid是用户在该小程序中的唯一标识,而unionid是用户在微信用户系统中的唯一标识。
服务端通过openid查询数据库来获取该用户的登录信息,并返回给小程序端从而实现了微信登录。
下面我们在小程序上具体代码实现一下微信登录:
调用wx.login()获取code

注意:wx.login()获取到的code有效期只有5分钟并且该code只能使用一次,所以wx.login()必须在每次发送code前调用。
发送请求将code传给服务端

注意:微信小程序要求接口必须为https不然无法上架。
服务端返回必要的用户信息,小程序端使用用户信息继续业务流程

总结:微信小程序的微信登录其实就是使用微信提供的接口获取openid的过程,其中需要后端服务配合,如果使用微信云服务则可以不需要后端直接获取openid。成功获取openid就可以使用openid作为用户唯一标识进行业务逻辑,微信登录就完成了。整个微信登录过程对于用户来说是无感知的,提供了良好的用户体验。
END
编辑 | 吉荧
审核 | 刘海娜
来源:
声明:我们推送的每一篇文章,都会注明来源和作者,版权归原作者所有,仅供分享学习,不做商业用途。若未能找到作者和原始出处还望谅解;如有侵权,请联系本微信后台,我们会在第一时间删除并致歉。
IT综合服务商
智慧城市规划设计与实施

