华视 CVR-100UC 身份证读取 html二次开发模板

python读卡:python读卡

最近小唐应要求要开发一个前端的身份证读卡界面,结果华视CVR-100UC 的读取界面是在是有点,而且怎么调试连官方最基本的启动程序都执行不了。CertReader.ocx 已成功,后面在问询一系列前辈之后,大概知道可能是ActiveX组件禁用的问题,各种禁用【哭死】。后来去找到了一个比较远古的CVR-100UC读卡,是基于后端服务器的,exe双击运行即可

cpp 复制代码
资源:
链接:https://pan.baidu.com/s/1FtC12sv6g45lFMKI4SZMbQ?pwd=6boq 
提取码:6boq
#读卡
http://localhost:19196/readCard
#关闭连接
http://localhost:19196/CloseDevice
#打开连接
http://localhost:19196/openDevice

目录结构

代码如下

html

cpp 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
</head>
<body>
  <button id="lj">连接设备</button>
  <button id="read">读取信息</button>
  <button id="close">断开连接</button>
  <div>
    <img id="tx" src="" alt="身份证照片">
    <div id="data"></div>
    <script src="./js/dy.js"></script>
  </div>
</body>
</html>

js

cpp 复制代码
document.getElementById('lj').addEventListener('click', function() {
    const xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function () {
      if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
        const data = JSON.parse(xhr.responseText);
        document.getElementById('data').innerHTML = JSON.stringify(data);
      }
    };
    xhr.open('GET', 'http://localhost:19196/openDevice');
    xhr.send();
  });
  document.getElementById('read').addEventListener('click', function() {
    const xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function () {
      if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
        const data = JSON.parse(xhr.responseText);
        const imageBase64 = 'data:image/jpeg;base64,' + data.identityPic;
        document.getElementById('tx').src = imageBase64;
        document.getElementById('data').innerHTML = JSON.stringify(data);
      }
    };
    xhr.open('GET', 'http://localhost:19196/readCard');
    xhr.send();
  });
  document.getElementById('close').addEventListener('click', function() {
    const xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function () {
      if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
        const data = JSON.parse(xhr.responseText);
        document.getElementById('data').innerHTML = JSON.stringify(data);
      }
    };
    xhr.open('GET', 'http://localhost:19196/CloseDevice');
    xhr.send();
  });
  

测试结果


相关推荐
程序员大阳1 天前
HTML+CSS+JS对话式实战(3)-活动管理页实现查询、新增、删除API后端接口
javascript·css·html·实战·删除·查询·新增
htzyl2064 天前
前端阶梯——第四十三章、实战二:待办清单To-Do
前端·javascript·html
程序员大阳4 天前
HTML+CSS+JS对话式实战(1)-开篇:认识我们要做的社团活动发布平台
javascript·css·html·实战·系统·平台·社团活动发布
一支蜉蝣4 天前
Day26 XD安全学习笔记--PHP 应用&模版引用&Smarty渲染&MVC 模型&数据联动&RCE 安全
笔记·网络安全·html·php
用户298698530144 天前
Python 将 Markdown 批量转为 HTML:单文件与目录遍历两种实现
python·html·markdown
钱栈up4 天前
热榜上手|HyperFrames:写HTML出MP4
前端·html
幸运小猿5 天前
模拟慢上传-处理超时重试image 丢失线上问题
前端·javascript·html
轻松西西莱尔5 天前
谷歌+斯坦福+CMU 等五家 203 页综述,我做了个HTML把主动式AI的边界跑给你看
前端·html·agent
MaAidan5 天前
用 Agent 排查线上问题:SLS 日志分析 + DB/Redis 数据验证,一条链路搞清楚
前端·bootstrap·html
砚凝霜5 天前
保姆级 | CTF Lemon:禁用右键/F12 怎么破?查看源码 + HTML 注释拿 flag
前端·html