关于用户系统中第三方登陆的设计


首先让咱们思考一个问题,用户为何喜欢第三方登陆?数据库

一、由于没有烦人的注册过程微信

二、由于不须要记忆登陆网站的密码,只需记住第三方帐号和密码就能够了网站

关于第1点,并非全部的第三方登陆都不须要注册。ui

第三方登陆的诞生

传统登陆

首先让咱们来看看,传统的用户系统是怎么设计的。设计

在传统的用户系统中,网站会要求用户先进行注册。注册的过程通常包括如下几种状况:token

1填写用户名》设置密码》填写其余注册信息。产品

缺点:没法获取到用户的关键信息(邮箱、手机号等)微博

2填写邮箱地址》验证邮箱》设置密码》填写其余注册信息。验证码

优势:能够获取到用户的关键信息,而且用户容易接受登录

3填写手机号》验证手机号》设置密码》填写其余注册信息。

优势:能够获取到用户的关键信息

缺点:部分用户反感绑定手机号,加大了注册门槛

经过上面这三种方式注册好后,就可使用用户名、邮箱、手机和密码登陆。其实使用 用户名、邮箱、手机和密码登陆这三种登陆方式能够概括为使用用户帐号和用户密码登陆

这种系统有两个缺点:

1须要事先注册帐号

2须要要牢记该网站的帐号和密码

其实比起第1点,第2点更让用户头疼,在这个互联网时代,每一个人都注册了大量网站帐号,不少网站对密码的要求还不同,时间一长那些不怎么用的网站的密码很容易就忘记。

手机号加验证码登陆

后来出现了手机号和手机验证码这种不须要记住密码的登陆方式。支持这种方式登陆的系统通常仍是会让用户先注册,注册的过程通常是

填写手机号》验证手机号》填写其余注册信息。

这种方式虽然仍是存在令用户讨厌的注册过程,可是采用验证码登陆后,用户不再须要记住密码了。

然而,这种登陆方式虽然看起来很好,但却不得不面对一个问题,那就是绑定手机号是不少用户反感的事情。

反感的缘由一般有两点:

一、用户注重隐私,不想把重要的我的信息暴露给别人

二、手机号绑定的帐号多了以后,更换手机号会特别麻烦

如今让咱们来总结一下这种登陆方式的优缺点

优势:用户不用记忆密码

缺点:仍是存在注册过程,另外部分用户会反感绑定手机号

那有没有一种既不须要绑定手机号,又不用记住密码的登陆方式呢?

答案是有的,那就是第三方登陆。

第三方登陆

第三方登陆是经过qq、微信、微博等等,第三方系统的帐户来登陆其余的系统。其余系统会在用户登陆的时候调用第三方的登陆窗口,用户在第三方登陆后,第三方系统会返回给咱们一个第三方的用户uid,token,这个像至关于用户名和密码了。

咱们能够将这个两个值存在数据库中当作第三方登陆的用户名和密码。下次用户在经过第三方登陆的时候,咱们发现这个uid咱们的数据库以及有了,就知道他是哪一个用户了。

到这里,事情本应该解决了,但实际上问题才刚刚开始。

麻烦的第三方登陆

基本流程

让咱们回忆一下本身使用过的那些能够进行第三方登陆的网站或应用。

通常流程是这样的

用户选择第三方登陆》第三方登陆成功》系统提示你尚未注册,让你填写注册信息》你内心暗骂sb,我tm选择第三方登陆就是不想注册,你这样比直接注册还麻烦》

最后的结果有三种

1终止注册离开网址

2退出绑定过程,从新选择传统方式注册

3忍气吞声完成注册(当你选择3后,系统会将你的第三方帐户和你的注册帐户绑定,以后你既能够经过注册的帐号登陆,又能够经过第三方登陆。)

虽然这种模式一直被用户诟病,但这依然是大多数支持第三方登陆网站的首选,那为何大多数网站第三方登陆都要作成这种模式呢?

使用该模式的缘由

缘由有些复杂,须要你了解直接第三方登陆的模式后才能体会其中的原因,这里简单说一下。

采用这种模式的系统将第三方登陆当作一种登陆方式,一个用户能够有多个登陆方式,好比手机登陆、邮箱登陆、微博登陆、微信登陆、qq登陆等等。

但这些都只是登陆方式而已,你在登陆以前,必须的有帐户吧!并且你的帐户必须绑定了该第三方的帐号吧,否则怎么登陆呢?

因此你在没有帐户时,直接经过第三方帐号去登陆这种类型的网站,他会让你先注册一个帐户。看起来好像是网站在套路你同样,让你先登陆,而后又让你注册。实际上这种网站的第三方登陆是提供给已有帐户的用户用的,怕他们忘记了密码,因此给他们提供绑定第三方帐号的服务,让他们在记不住密码时能够经过第三方帐号来登陆。

优点及弊端

该种模式经过绑定第三方帐号,解决了用户容易忘记本站密码的问题。但在注册时,会使新用户反感。

改进方案

能够在登陆界面明确指出,第三方登陆是给已有帐户且绑定了第三方帐号的人用的,这样至少不会让用户在注册时,觉得你在套路他。

真·第三方登陆

不少用户都以为上面的模式太麻烦了,就不能直接用第三方帐号登陆系统吗?固然是能够的,而且有部分网站就是这样作的,好比简书。

基本流程

在这种不须要提早注册,直接可使用第三方用户登陆的系统中,通常流程是这样的

用户选择第三方登陆》第三方登陆成功》系统后台判断是否为第一次登陆,若是是,就建立一个用户。》建立用户并登陆成功

从上面的流程能够看到,这种模式将注册流程给省略掉了,从原来的收集用户信息,建立用户。变成不收集用户信息,直接建立用户。

该模式使用较少的缘由

你可能会以为这种模式不是挺好的吗,对用户友善多了,为何会用的人少呢?

要回答这个问题还得从两层面来讲

系统设计层面

在前面麻烦的第三方登陆那一章,我有讲到,那种模式实际上是将第三方登陆当作用户的一种登陆方式。

·第三方登陆不同,这种模式将第三方登陆当作一个独立的用户。

因为没有了注册过程,第三方帐号第一次登陆时,将无帐户可登,这时差别出现了,麻烦的第三方登陆让用户去注册,·第三方登陆 直接生成一个帐户。

可是这个自动生成的帐户只是个空壳,里面一点有用的我的信息都没有。并且不像上面那种登录方式,多个第三方帐号都是登陆在同一帐户下,这种模式下若是一我的用多个第三方帐号登录,会生成多个帐户。而且这几个帐户之间相互独立,没有任何关系,尽管他们都来自同一我的的。

有人可能要问了,一我的有多个帐户有什么影响吗。

其实在系统设计的层面上来说,咱们但愿一个用户尽可能对应一个现实生活中的人(关于这个原则我会再写一篇文章来讲明) 。这样能够下降系统的复杂性,毕竟咱们的系统最终是要为人提供服务,而不是“用户”。

那怎样让一个用户尽可能对应一个现实生活中的人呢?答案是在建立用户的时候,让系统绑定并验证一我的的关键信息,好比手机号或邮箱等。由于一我的通常也就1个手机号,最多2到3个。经常使用的邮箱通常也就一、2个。这这关键信息基本上能够表明一我的。

这种模式下,因为没有了注册过程,建立用户时,没法绑定并验证一我的的关键信息,致使一个用户没法表明一我的

这种模式下,一我的能够轻松拥有多个帐户,这将致使用户行为分散到了多个帐户中,增长了系统的复杂性

为何注册对网站很重要,不少网站死咬着不放,缘由就在这里。

说了这么多,总结一句话就是,这种模式下的用户没法与现实中的人创建一对一的映射,致使用户行为分散,系统复杂性提升(这句话可能有些难以理解,不要紧继续往下看就知道我在说什么)。

用户使用层面

因为注册门槛下降了,致使用户十分容易就能够拥有多个帐户,甚至说一不当心就注册了多个帐户。

一我的有多个帐户原本没什么不能够的,但在某些状况下,会影响用户使用产品的连贯性,形成很差的用户体验。

这里的某些状况指的是:用户在不一样是时期,用不一样的第三方帐号登陆,进行了不一样的操做,而用户却但愿这些操做是发生在同一个帐户下。

什么意思?

以简书为例,假设有如下几种情景模式

情景1 某天,用户第一次用qq登陆简书(这时简书会自动建立了一个帐户),用户在简书看了几篇文章,并收藏了其中一篇文章(注意这篇文章是收藏在qq登陆的帐户下)。

情景2 一段时间后,用户又来登陆简书了,可是这时候却想不起来上次是用哪一个第三方帐号登陆的。(记不住也很正常,如今不少网站和应用都支持第三方登陆,各个网站支持的还都不同,有的支持微博、有的支持微信、有的支持qq、还有的全都支持。网站一多,时间一长,就分不清哪一个网站是用哪一个第三方帐号登陆的)。

这个时候用户通常会根据记忆选择一个第三方帐号来登陆,假如此次用户选择的是微信登陆,登陆上去一看,是个新帐号,此时用户通常会有两种作法:

一、退出该帐号选择其余第三方登陆。此时系统白白建立了一个新帐户。

二、新帐号就新帐号,都同样用。

假设用户选择了2,而后用新号在简书看了几篇文章,并收藏了其中一篇文章(注意这篇文章是收藏在微信登陆的帐户下)。

情景3 一天,用户想整理本身在简书上收藏的文章,但却发现,收藏的文章被分散到了几个不一样的第三方帐户中。这时候用户可能会抱怨说,什么破网站,我在其余网站无论是经过哪一个第三方帐号登陆,都是登陆到了同一个帐户上,全部的操做也都是发生在同一个帐户下的。

上面的情景123就是我说的“用户在不一样是时期,用不一样的第三方帐号登陆,进行了不一样的操做,而用户却但愿这些操做是发生在同一个帐户下

上面出现的问题就是我说的,在某些状况下一我的拥有多个帐号时,会影响使用产品的连贯性,形成很差的用户体验。固然这有一个前提条件,那就是用户本意是只想要一个帐户。若是用户一开始就是冲着多个帐户去的那固然不影响他的体验。

说了这么多,总结一句话就是,这种模式下容易致使用户行为分散(收藏文章这个行为被分配到了不一样的帐号中),后期若是想将分散的行为汇总会很困难(将不一样第三方帐号收藏的文章汇总到一块儿)。

(在简书中,若是你想将多个第三方登陆产生的帐户合并成一个帐户,首先要使用手机号或邮箱注册一个传统帐户,而后将你第三方登陆的帐户中全部发表的文章先备份到本地,而后所有删除,还要将帐户中的钱所有用完。以后让系统将你的第三方帐户完全删除。以后再用传统的帐户从新绑定第三方帐号。最后从新上传文章。)

优点和弊端

优点:

没有注册流程,容易吸引用户。

弊端:

模式下的用户没法与现实中的人创建一对一的映射,致使用户行为分散,系统复杂性提升。

改进方案

只支持单一第三方登陆(好比只支持微信登陆),这样虽然仍是没法让用户与现实中的人创建一对一的映射,可是至少用户行为的分散程度下降了,不会像支持多个第三方帐号登陆的系统那么高

总结

目前第三方登陆一般有两种设计思路

一、将第三方登陆当作一种登陆方式,使用第三方登陆的前提是,你先要有一个帐户。

缺点:当用户没有帐户,直接使用第三方登陆时,你只能提示他先去注册帐户。但在用户看来,就是欺骗,容易引发用户的反感。

优势:当用户帐户绑定了第三方帐号后,用户就在也不用记住密码了,彻底能够经过各个熟悉的第三方帐号登陆系统。

二、将第三方登陆,当作一个独立的用户

优势:没有注册流程,容易吸引用户,因为是第三方直接登陆,也不须要考虑用户会忘记密码

缺点:一我的容易产生多个帐户,用户的行为容易分散到多个帐户中,增长了系统的复杂性,某些状况下还会影响用户的产品体验。

通篇看下来,第三方登陆并无想象中的那么美好,第一种方式也就仅仅解决用户忘记密码的问题,注册时还会引发用户反感。第二种方式虽然能起到吸引用户的做用,但却增长了系统的复杂性,某些状况下还会影响用户的产品体验。

因此,你们能够根据本身的实际状况,考虑是否要添加第三方登陆的支持,若是要,应该使用哪一种第三方登陆的模式。

番外

不使用第三方登陆,如何吸引用户注册

一句话来讲就是下降注册门槛

首先不要使用传统的表单注册的形式,这样会让用户以为本身在填表。(我想这世界上应该没有人喜欢填表吧)

其实彻底能够采用引导式注册,好比:

一、注册界面就只有一个输入框,让用户输入手机号或邮箱。

二、当用户点击获取验证码的按钮后,UI进入到了验证用户的界面

三、输入验证码,验证经过后,UI进入设置密码的界面

四、用户设置密码

五、够了,前4步基本就能够拿到一个用户最的核心信息,其余信息像什么用户名啊、昵称啊彻底能够用注册时的邮箱和手机号代替,或者等用户进入应用后再填写,或者等后期再完善。不要想着一会儿拿到用户的全部信息,那样用户只会被你吓跑。

相关文章
相关标签/搜索