web项目接入指纹识别+识别过程信息推送

前台发起接口 -> 后台java 监听按压 -> 用户按压前台提供的指纹仪(和后端绑定的) ->websocket实时返回指纹仪状态提醒前台用户按压 -> 指纹仪返回指纹id -> 后台根据指纹id查询数据库绑定的用户id -> 返回给前台用户信息

功能展示

通过接口远程调用指纹仪设备

web项目接入指纹识别+识别过程信息推送

通过webSocket实时返回指纹仪状态给前台

web项目接入指纹识别+识别过程信息推送

背景

跟老师做了一个人脸识别签到管理平台,,后面添加了需求要接入指纹识别。

前期分析

给一个已有的web项目添加生物指纹识别的方向【一个服务端 + 一个固定打卡的前台】

一个已有的指纹仪 + 各类语言的本地开发包 + dll库 + 驱动

预期方案

  1. 指纹识别外设装在前台 --> js包获取指纹返回id然后上传服务器处理
  2. 指纹识别设备装在后台 --> 前台发起请求后,直接从后台处理[指纹按压在后台服务器执行]

两种方法显然第一种更简单,但问题是已有的项目是web前后台分离项目,不是桌面程序应用可以直接调用官方提供的库。前台语言很难去调用本地库和开发包;并且驱动就限制了硬件只能允许在windows端.

最后就选择了后者。将开发包植入web后台,前台调用接口请求后台调用开发包去调用指纹仪,最后将指纹仪返回的指纹id和数据库处理得到指纹绑定的用户信息。

接入逻辑

web接口调用指纹仪

  1. 首先搭建指纹仪的本地运行环境
  2. 大致熟悉官方提供的demo包/sdk/jar包的使用方法
  1. 接入web系统
  2. 根据controller请求调用指纹仪接口,返回指纹仪处理处理好的数据

指纹仪状态推送

  1. 系统接入webSocket(使用spring托管)
  2. 用户建立连接时存储用户Session(webSocket包下面的)
  1. 在需要的地方注入webSocket,直接调用sentMessage返回实时状态信息

解决问题

每次后台录入指纹要录入三次,但一次接口只能返回一次结构,而不能中间主动提醒用户去录入,这时候就需要用webSocket了,详细见目录下另外一片webSocket【已解决】

\

上一篇:Redis之zset实现滑动窗口限流


下一篇:Android屏幕适配全攻略 (转载)