小程序登录注册

小程序登录注册如何设计?

首先考虑产品是平台型产品还是单独型产品。平台型产品需要在多个产品之间进行登录注册并进行数据交互,单独型产品只需要在一款产品上进行登录注册即可。所以平台型产品需要解决多平台唯一身份问题,而单独型产品则不需要考虑此问题。下面我对平台型产品和非平台型产品登录注册阐述一下自己心得。

无论是平台型产品还是独立型产品,登录注册都有两种设计方案,一种是依托于微信的登录注册设计方案,一种是自己平台自有的登录注册设计方案。

独立型平台依托微信登录注册方案

这种方案主要是通过微信授权来获取用户openID信息来实现登录注册,每个用户openID在每个小程序中都是唯一,所以自己平台也用微信的openID作为用户的录注册唯一身份。

优点:开发实现比较简单,用户登录操作比较简单,缺点:平台转移数据时无法确认用户身份,无法获取用户手机号运营推广是一个很大难点

openID获取示意图

小程序端登录注册流程

平台型依托微信登录注册设计方案

平台型产品需要在多个产品之间进行登录注册并进行数据交互,所以平台应该做到在不同产品之间也能确认用户唯一身份,这里我们使用微信开放平台来实现此业务。微信开放平台可以通过UnionID确认用户在多个产品的唯一身份,但是多个产品都需要绑定在微信开放平台才可以。微信开放平台绑定产品数也是有限制的,所以此方式不适合趋近无限大产品数平台型产品。

优点:多平台可确认用户唯一身份,用户操作简单,缺点:开发实现有一定工作量,微信开放平台不能无止尽的绑定小程序或公众号所以当平台要服务很多商家时此设计方案行不通

UnionID获取示意图

小程序端登录注册流程

平台型&独立型自有平台登录注册方式

自有登录注册方式就是不在依赖微信登录注册方式,用手机号作为唯一用户身份来进行登录。微信授权只是完善用户信息数据表字段而已,这种做法无论平台用户数据如何迁移都能确定用户唯一身份。

用户进入就让用户先登录注册会降低平台用户转化率,尤其是电商平台。所以我们在此处引用一个创建虚拟账号的功能,保证用户进入平台即可使用所有功能。同时所产生的数据都沉淀在虚拟账号中,然后在一个合理的用户场景下让用户使用手机号登录注册即可。

虚拟账号如何创建?依赖微信openID创建,依赖openID创建的虚拟账号要保证唯一性。当虚拟账号创建成功后用户操作产生的数据都关联到虚拟账号下面,当用户绑定手机号后所有数据同时关联到手机号下,从而达到用户在另一个微信使用此手机号登录时也显示其关联数据目的。

同一用户用多个微信访问产品时,平台会给用户创建多个虚拟账号也就意味这用户会有多份数据,如果多个虚拟账号绑定的是一个手机号那么多份数据全部同步至绑定手机号。

因为存在多份数据绑定一个手机号关系,所以在同一微信上退出登录功能不能反复使用,应加时间限制防止用户切换账号频率过高造成系统出错。为什么会出错,因为在用户退出登录那一刻起,手机号与虚拟账号解绑只沉淀退出前数据。退出后虚拟账号产生的数据只会关联到新登录注册手机号下,反复退出时间间隔过短时会导致数据错乱。

退出登录的解绑只是虚拟账号产生数据归属问题解绑,而并非已关联到手机号数据和手机号进行解绑。所以产品应该有一个专门更换手机号功能,以实现关联手机号数据换关联其他手机号。

虚拟账号创建示意图

小程序登录注册流程


虚拟账号数据变化示意图

其实产品没有最好的解决方案,只有不断优化进步的更好解决方案,在问题中不断更新迭代让产品各个功能打磨的更细腻。上述若有不同见解的可提出你们的想法,若有不对地方欢迎指导。

若是对产品感兴趣的小伙伴欢迎+V“yf1451163600”

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。