优化的网站注册时[验证邮箱]的流程

你通常见到的一个流程大概是这样的:
1. 填写用户名、密码、重复密码、Email、……,提交;
2. 收取邮件,点击激活链接;
3. 进一步完善资料或使用网站。

照上面的流程,请大家思考:
“在邮箱激活链接未得到使用之前,网站就已经将该Email地址与一个用户名和密码绑定了关系,这是否存在问题?”

这当然是存在问题的,就像银行不会还没看你身份证时,就先发一张银行卡和密码给你。
既然要验证邮箱是否有效,就不应该在邮箱未验证成功之前就在该邮箱上绑定上用户名、密码等信息。
正常的流程应该是:用户通过邮箱获得了激活链接,然后填写“用户名”、“密码”等个人信息,提交完成注册。

不然会存在什么问题呢?问题可是不少,可能存在的问题有:(注意只是可能)
1. A填写了B的邮箱,B无法再使用此邮箱注册。
2. A填错了邮箱,不提供更改验证邮箱的话A因为收不到激活邮件无法完成注册。(注意因为前边错误,所以要增加功能补救了,还要提供更改验证邮箱,产品的开发与使用因此而没效率)
3. B收到一封别人发错的激活信写到:欢迎您亲爱的A。B莫名其妙的点击了链接,发现已经注册了某网站,但是B自己不知道用户名或者密码。
4. A填错成了B的邮箱,B错给激活了,A照常使用着用户名和密码使用着该网站的功能。整天收到通知邮件的却是B。
5. C随意填写很多的假邮箱占用大量的用户名,导致很多用户名无法再被他人使用。
……发生错误的情况等等,可能还不止这些。

邮箱验证与手机验证其实是一种同理的情况。
我们常常知道手机验证时,让用户先收到短信验证码,验证码通过之后才让用户干他能干的事情。
如果你的网站是只有验证邮箱有效后才能使用的网站的话,也是同理。先收到激活链接,验证有效而后填写密码等资料。
这样一般宽松的验证邮箱的流程就是:
1. 填写经常使用的邮箱,提交,发送验证链接。
2. 收到邮件,点击验证链接。
3. 填写密码等个人资料,完成注册。
为什么说是宽松的验证邮箱流程呢,因为填写邮箱时,你可以填写任何人的Email地址。你可以在此完成自己邮箱的注册,同样可以填写朋友的邮箱邀请朋友注册。(一功能多用,省了再开发一个“邀请朋友”的功能了,赶巧了。)

注意:如果是手机验证注册也采用这种宽松的流程的话就可能存在些问题。因为网站向外发送短信验证码也是有成本的,恶意用户要是填写各种号码请求验证会浪费网站的资源,同时对收到短信的用户来说也是一种垃圾短信。宽松的邮箱验证流程也是一样,只是网站向外发送一封Email的成本比较低而已。
严谨一些手机验证注册的流程应该是这样的:
1. 用户向网站服务台号码发送一条申请注册的指令。
2. 网站服务台收到指令,向用户手机回发一条验证码短信。
3. 用户输入验证码,完成注册。

现在很多的网站Email服务器地址已经被不少的邮件运营商视为了垃圾邮件。为了避免在宽松的邮箱验证流程下,用户填写了Email验证请求,但用户要到“垃圾邮件箱”下收到验证邮件,或者根本就收不到验证邮件。建议邮件验证注册也采用像严谨一些的手机验证注册一样。
1. 用户向网站邮件服务器发送一条申请注册的指令邮件。(用户向服务器地址发信后,服务器地址会自动出现在用户的“通讯录”当中,这样服务器回发的邮件不会再被“垃圾邮件拦截”。)
2. 网站邮件服务器收到申请注册的指令,回发一封完成该邮箱注册的链接。
3. 用户点击该加密链接,填写密码等个人信息,完成注册。

以上说的都是只有验证邮箱有效才能使用网站产品的网站,那么有人要问:我要是不验证邮箱也能让用户使用部分功能的网站怎么办?

不验证邮箱也能让用户使用部分功能的网站,那就是先注册后验证的方法。
注册时让用户填写:用户名(登录名,注意因为邮箱还没验证不可用邮箱。)、密码、邮箱以及其它个人信息,完成注册。网站的基本功能用户就可以使了。
用户要是同时填写了邮箱,可以向该邮箱发送邮箱绑定用户名的链接。要是没有填写可以日后在“个人资料”里填写,并点击“绑定邮箱”按钮,发送邮箱绑定用户名链接。但是下面要注意:当先完成注册后绑定邮箱时,在用户点击绑定链接后,到达的页面要再次验证要绑定邮箱的用户身份。也就是让要绑定此邮箱的用户输入自己的用户名及密码。验证无误,方可完成该用户名与该邮箱的绑定。不然A填写了B的邮箱要求绑定,B随便点击了链接,结果A却绑定上了B的邮

原文地址:https://www.cnblogs.com/jxldjsn/p/5510581.html