用户在网站注册,网站通过微信发送验证码,这个操作是怎么实现的?

根据我的观察:
1. 首先他们搞了一个渠道二维码(也就是微信说的带参数的二维码,而且他们用的是永久型的,市面上也叫渠道二维码)
2. 用户扫描这个二维码,后台程序得到event,在数据库里面生成一个随机验证码 作为消息返回。
3. 每一个随机验证码只有10分钟的有效期
4. 用户在网页上输入验证码,后台去查询,是否存在10分钟内该验证码的记录,如果有,则通过

这里和我们传统的验证码有个本质的区别,他的验证码和终端不是一一对应的。不像我们平时看到的比如说手机、邮箱的验证码。他这个验证码只要是10分钟以内的,不管是不是你扫描以后生成的,都是可以用的。

所以你不需要把那个二维码打上马赛克,那个是他的渠道二维码,所有的注册页面都是一样的……
本质上他是一个吸引关注的功能,而不是传统意义上的验证码的功能

PS:微信还支持临时带参数的二维码(最长有效期7天),这个数量最多是32位整形。但是因为你无法通过用户扫描的事件知道他的手机号或者其他,你仅仅知道微信ID。所以理论上你可以用临时二维码达到一个效果就是将他的账号和微信ID关联起来。但是如果只是这个效果的话,直接用微信登录就可以了。
posted @ 2017-08-17 15:45  左正  阅读(1071)  评论(0编辑  收藏  举报