关于扫码登录的理解

205 阅读1分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第9天,点击查看活动详情

  • 密码懒得输,扫码来解决
  • 扫码登录是个很普通的需求,下面分析下扫码登录的整个流程

1.流程梳理

  • 扫码用的是二维码介绍

二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型。

image.png

  • 1.1登录选择扫码登录,这时候会携带一些设备信息向服务端发送请求,获取一个唯一的ID生成二维码
  • 1.2手机端是登录状态的,这时候扫码获取到了唯一的ID
  • 1.3手机获取了唯一的ID然后登录确认发到后台用户和这个ID绑定
  • 1.4前端轮询请求后台这个id的,服务端发现绑定后就可以直接登录了
  • 1.5默认都是https访问的,PC端获取的唯一ID有时效性存在的

2.例子简单介绍

  • 这个是腾讯云的扫码登录,可以看出前端再轮询请求后台 image.png
  • 未登录的相应数据

image.png

  • 超时未相应

image.png

  • 扫描成功 返回状态发生了改变

image.png

image.png

3.二维码的生成和解析

  • 包引入

maven最新包。

生产、解析二维码网上代码很多的

       <dependency>
	 <groupId>com.google.zxing</groupId>
	 <artifactId>core</artifactId>
	 <version>3.4.1</version>
      </dependency>
      
      <dependency>
        <groupId>com.google.zxing</groupId>
        <artifactId>javase</artifactId>
        <version>3.4.1</version>
      </dependency>