小程序各种姿势实现登录
喜闻乐见的背景时间--由于最近接触小程序比较多,又刚好经历过小程序的自动登录时代以及现在的点击登录时代。结合自己的实践以及观察到其他小程序的做法,就有了这篇小分享~ 本文可能涉及的内容-- 在本篇文章所讲的登录不仅仅指的是wx.login而是包括以下三点--
我需要获取用户头像和昵称要怎么做?用户头像和昵称对于我们开发小程序几乎算是刚需,那么我们应该怎么样正确高效的获取&利用它们呢? 旧时代--自动授权一把梭使用open-data时需要注意小程序基础库的版本。具体使用方式如下 其实可以将open-data看作图片或字符串,想要控制样式在外层加上view标签以及相应的class即可。 相比之前获取用户基本信息的方式,这个方案还是比较走心的,如果一些小程序只是对用户的头像昵称等基本信息有需求的话就不需要和以前一样大费周章的调一个getUserInfo,拿回来一堆用不上的东西。 我需要用户在服务器端实现登录该怎么做?按照微信小程序的文档,能在服务器端完成登录(获取用户session_key/openid等),有三个前端传回的参数是必不可少的:
code是通过wx.login获取的,而encryptedData & iv是从wx.getUserInfo中获取的。 但是,因为微信基础库更新,取消通过api调用getUserInfo的能力,需要使用button组件的开放能力[open-type]去调用getUserInfo方法。 上述获取数据的方法具体建议阅读官方文档: 有关getUserInfo的文档 有关login的文档 踩坑心得:请确保wx.login早于getUserInfo,不仅是代码执行层面的早,最好是login回调成功之后才去getUserInfo,不然可能会出现后端解密失败的情况,导致登录失败。 (还可以通过API方式调用getUserInfo的时候如何实现后端登录就不在此赘述了。) 尽管已经无法自动授权,我们还可以这样实现小程序的登录授权总体来说有两种授权模式,一种是强制授权,另一种则是按需授权,无论是怎么样的流程基本都可以归类为这两种授权。 强制授权
按需授权
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |