# 二维码登录的秘密(后端) **Repository Path**: webcby/the-secret-of-qr-code-login ## Basic Information - **Project Name**: 二维码登录的秘密(后端) - **Description**: 二维码登录的秘密 探究二维码的登录原理及实现 简易版(暂未对安全性及性能做考虑) 后端 SpringBoot实现 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 10 - **Created**: 2023-04-25 - **Last Updated**: 2023-04-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 二维码登录的秘密(后端) #### 介绍 二维码登录的秘密 探究二维码的登录原理及实现 简易版(暂未对安全性及性能做考虑) 后端 SpringBoot实现 #### 相关项目链接 [二维码登录的秘密(前端)](https://gitee.com/Mkingm/the-secret-of-qr-code-login-vue/) [二维码登录的秘密(移动端)](https://gitee.com/Mkingm/the-secret-of-qr-code-login-android/) #### 流程如下 1. 获取QRCodeID 绑定地址 ip 将二维码ID返回给PC端 2. 根据QRCodeID生成二维码 PC端已二维码的形式显示二维码 3. (待扫描) PC端携带设备信息向服务端发送请求,服务端生成二维码ID与PC设备信息进行绑定 4. (已扫描待确认)移动端扫描PC端二维码,获取到二维码ID,移动端带二维码ID+身份信息发送给服务端, 服务端验证身份信息通过后,将二维码ID与身份信息绑定,并生成临时token返回给移动端,二维码状态变为已扫描待确认 5. (已确认)移动端确认登录,并携带临时token请求服务端,服务端验证临时token通过后,改变二维码状态为已确认并生成PC token 6. PC 使用token进行验证状态 0等待验证,1验证成功,2正在验证,3验证失败(过期) #### 项目间调用关系 ![输入图片说明](https://images.gitee.com/uploads/images/2021/0627/121941_636c48ba_2353571.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2021/0627/121952_c899eeb1_2353571.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2021/0627/121958_b9650d96_2353571.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2021/0627/122006_f687b791_2353571.png "屏幕截图.png")