微信扫描公众号二维码,用户的网站账号自动登陆网站

 

微信公众号是在2012年8月份正式上线的。很荣幸,我在2013年底开始接触到了它并自己学习摸索开发了一些简单的功能,比如自动回复、自定义菜单。自动回复的时候如果是英文单词我还会帮用户翻译,类似于一个英语词典。最开始就是照着简洁的官方文档来做,慢慢摸索。不过后来接触多了慢慢发现,公众号的架构与开发者逻辑是很严谨也很安全的。举个简单的例子,比如要开发自定义菜单功能,需要用秘钥A和秘钥B去拿秘钥C,在后台管理里配置安全域名后,才可以用秘钥C用特定的方式去访问自定义菜单的接口。微信还有一个开放平台,我也使用过,那个就更复杂一点。

 

切入正题,后来换了一家公司,他们正好也会做一些公众号的业务,我就帮他们的网站做了一个个性的登录功能—-公众号扫码登录。这个登录不是“授权登录”,而是先把公众号与网站上自己的账号做绑定,然后网站的登录处选择公众号扫码登录,用户如果未关注则需要先关注公众号,然后绑定账号,如果已经关注且绑定了,扫码后公众号里则回复登录提示,点击后网站直接登录已经绑定的账号。关键点就在这个绑定的网站账号上,如果是授权登录,公众号就可以直接获取你的用户信息并登录,而扫码登录需要知道你在哪台电脑登录、让谁登录、何时登录。

下面是简易的技术流程图:

1

*角色:网站(web)、公众号项目(mobile)、用户(user)
登陆步骤:

1.网站在约定的场景id随机数里生成带参数二维码,供用户扫码(生成二维码以后网站不断轮询)
2.用户未关注时,让他关注公众号,并绑定自己的网站账号;已关注时则判断是否绑定账号,如果未绑定,跳转到绑定页面

3.已关注并绑定时直接回复消息“点击登陆网站”,用户点击登陆按钮,修改状态state=1(默认是0)
4.当网站查询到用户的登陆状态变化后(state=1),立刻返回给网站前端账号信息(同时恢复状态state=0),未查询到则返回-1(账号信息RC4加密)
5.当网站收到接口返回的账号信息后立刻将该账号登陆

《微信扫描公众号二维码,用户的网站账号自动登陆网站》有1个想法

发表评论

电子邮件地址不会被公开。 必填项已用*标注