二维码闪电登录流程详解,附demo(1/2)

  二维码,最早发明于日本,它是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理。它具有条码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图形旋转变化等特点。
  二维码技术获得了广泛应用,今天我们要讲的这个场景就是使用二维码来进行登录,这样可以省去用户输入繁琐的用户名和密码,只要拿出手机拍一下(第一次还是要输入的哈)就ok了。在一些输入不是很方便的设备上(比如智能电视)还是很实用的一个功能滴。目前企鹅和一些游戏已经支持了,可以去尝试一下。
  好了,废话不多说,我们先来分析一下整个二维码登录的流程,附图:


  流程图就不再详细解释,TV端在拿到授权token之后,就可以请求登录了,这就是整个二维码的登录流程。

  接下来,我们分析一下几个角色和他们要做的事情:

  首先是TV:

1.将自身设备guid发送给服务端
2.接收服务端生成的二维码图片(Base64 转 Image)
3.使用websocket请求服务端推送登录token (技术点:websocket支持)


  手机端:

1.二维码解码(这个不多说,zxing等开源类库支持)
2.请求登录接口


  服务端:

1.websocket推送登录token
2.二维码生成


  手机端比较简单,二维码解码网上的例子有很多,这里就不多说了,在后面我们仅仅模拟一下登录即可。

  重点给出TV端登录示例(手机也可使用)。


  原文链接:http://www.67tgb.com/?p=620

  转载注明:望月听涛



原文地址:https://www.cnblogs.com/pangblog/p/3289987.html