如题:身份证阅读器(读卡器)谷歌Chrome和火狐Firefox浏览器端网页开发接口控件分享,这个SDK开发包兼容支持谷歌Chrome浏览器和火狐Firefox浏览器,仅PC端使用,Android和iOS端浏览器不支持使用。

支持各浏览器最新版本(2020年05月更新):

谷歌Chrome:81.0.*,支持HTTPS协议

火狐Firefox:76.0*

360安全浏览器:12.1(内核版本:78.0)

360极速浏览器:12.0(内核版本:78.0)

Internet Explorer:IE10、IE11

UC:6.2.4098.3

搜狗:8.6

QQ:10.5

遨游:5.3.8

世界之窗:7.0

2345浏览器:10.8

支持型号:东信EST-100GS身份证读卡器/千景J15S身份证读卡器

测试版本(2020年05月更新): 谷歌Chrome:81.0.3325.181 / 火狐Firefox:76.0.2.6656 / 360安全浏览器:12.1.0.410 / Internet Explorer:IE11

说明:此SDK支持型号东信EST-100GS&千景J15S,其他品牌型号,例如华视CVR-100U,神思SS628-100U、新中新DKQ-A16D,精伦iDR210、普天CP IDMR02/TG、神盾ICR-100U未经深度测试,不一定适用!

开发支持QQ:313826379,电话:13922210502

以下贴出身份证阅读器谷歌和火狐浏览器控件部分代码,如需要完整版,请下载或联系我,QQ:313826379

在线演示网址:http://www.eastcoms.com/chrometest.html

<html>  <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><style>td {background-color:#eeeeee}input {width:430px;}.butt {width:150px; height:30px}.title {padding-left:10px; width:130px}</style>      </head>  <!--<object id="objActiveX" classid="clsid:03545152-1F24-4555-B9BD-E4D91184CFE2" width=0 height=0"></object>--><object id="objActiveX" TYPE="application/hxgc-device.j10" width=0 height=0></object><body> <table width="750px" border="0" cellspacing="1" cellpadding="2" align="center" bgcolor="#FFFFFF"><tr><td colspan="3" align="center"><input class="butt" type="button" name="OpenReader" value="打开设备" onClick="openReader();"><input class="butt" type="button" name="startReadCard" value="读二代证" onClick="startReadCard();"><input class="butt" type="button" name="CloseReader" value="关闭设备" onClick="closeReader();"><input class="butt" type="button" name="Clear" value="清空信息" onClick="clearText();"></td></tr> <tr> <td class="title">照片保存路径:</td><td colspan="2"><input type="text" name="text_path" id="text_path" value="">  注:路径结尾需添加"\"</td></tr><tr> <td class="title">姓名:</td><td width="430px"><input type="text" name="text_name" id="text_name" value="" readonly ></td><td rowspan="5" align="center"><img id="PhotoID" name="Photo" style="width:96px; height:118px;"/></td></tr><tr> <td class="title">性别:</td><td><input type="text" name="text_sex" id="text_sex" value="" readonly ></td></tr><tr> <td class="title">民族:</td><td><input type="text" name="text_nation" id="text_nation" value="" readonly ></td></tr><tr> <td class="title">出生:</td><td><input type="text" name="text_birthday" id="text_birthday" value="" readonly ></td></tr><tr> <td class="title">地址:</td><td><input type="text" name="text_address" id="text_address" value="" readonly ></td></tr><tr> <td class="title">身份证号:</td><td colspan="2"><input type="text" name="text_idNum" id="text_idNum" value="" readonly ></td></tr><tr> <td class="title">签发机关:</td><td colspan="2"><input type="text" name="text_dept" id="text_dept" value="" readonly ></td></tr><tr> <td class="title">开始期限:</td><td colspan="2"><input type="text" name="text_effDate" id="text_effDate" value="" readonly ></td></tr><tr> <td class="title">结束期限:</td><td colspan="2"><input type="text" name="text_expDate" id="text_expDate" value="" readonly ></td></tr><tr> <td class="title">返回数据:</td><td colspan="2"><textarea id="text_result" rows="10" name="text_result" id="text_result" style="color:#FF0000" cols="70" readonly></textarea></td></tr>   </table><script type="text/javascript" >  var socket;var sendFlag=0;var PhotoPath = "C:\\";var PhotoName = "";    document.getElementById("text_path").value = PhotoPath;function clearText(){PhotoPath = document.all("text_path").value;document.getElementById("text_name").value = "";document.getElementById("text_sex").value = "";document.getElementById("text_nation").value = "";document.getElementById("text_birthday").value = "";document.getElementById("text_address").value = "";document.getElementById("text_idNum").value = "";document.getElementById("text_dept").value = "";document.getElementById("text_effDate").value = "";document.getElementById("text_expDate").value = "";document.getElementById("text_result").value = "";document.getElementById("PhotoID").src = "";}function openReader() {var host = "";socket = new WebSocket(host);try {socket.onopen = function (msg) {openReaderStart(); //连接设备};socket.onerror = function(){};socket.onmessage = function (msg) {if (typeof msg.data == "string") {var msgM=msg.data+"";if(sendFlag==1){if(msgM[0]==0){resultMsg("错误:设备连接失败,"+msgM);}else if(msgM.indexOf("-1") >=0){resultMsg("该设备不支持谷歌");}else{resultMsg("设备已连接.");}}else if(sendFlag==2){if(msgM.indexOf("1") >=0){//resultMsg("身份证已放");getCardID();}else{resultMsg("请放身份证");}}else if(sendFlag==3&&!(msgM.indexOf("name") >=0)&& !(msgM[0].indexOf("1") >=0)){if(msgM[0]==0){resultMsg("读取身份证ID失败");}else{resultMsg("身份证ID:"+msgM);readIDCard();}}else if(sendFlag==4){if(msgM[0] == "0"){resultMsg("读取身份证信息失败:"+msgM);}else{//获得身份信息document.getElementById("text_name").value = msgM.match(/name(\S*)name/)[1];   //姓名    document.getElementById("text_sex").value = msgM.match(/sex(\S*)sex/)[1];   //性别             document.getElementById("text_nation").value = msgM.match(/nation(\S*)nation/)[1];     //民族                      document.getElementById("text_birthday").value = msgM.match(/birthDate(\S*)birthDate/)[1];       //出生日期                  document.getElementById("text_address").value = msgM.match(/address(\S*)address/)[1];          //地址  document.getElementById("text_idNum").value = msgM.match(/IDCode(\S*)IDCode/)[1];         //身份证号      document.getElementById("text_dept").value = msgM.match(/issuingAuthority(\S*)issuingAuthority/)[1];  //签发机关                         document.getElementById("text_effDate").value = msgM.match(/beginPeriodOfValidity(\S*)beginPeriodOfValidity/)[1];       //有效日期起始                   document.getElementById("text_expDate").value = msgM.match(/endPeriodOfValidity(\S*)endPeriodOfValidity/)[1];        //有效日期截止saveJpgPhoto(msgM.match(/name(\S*)name/)[1] + "_" + msgM.match(/IDCode(\S*)IDCode/)[1]);}}else if(sendFlag==5){if(msgM.indexOf("1") >=0){resultMsg("保存JPG照片成功,路径 = " + PhotoPath + PhotoName + ".jpg");saveBmpPhoto();}else{resultMsg("错误:保存JPG照片失败," + msgM + ".");}}else if(sendFlag==6){document.all("PhotoID").src = "file:///"+ PhotoPath + PhotoName + ".jpg";if(msgM.indexOf("1") >=0){resultMsg("保存BMP照片成功,路径 = " + PhotoPath + PhotoName + ".bmp");}else{resultMsg("错误:保存BMP照片失败," + msgM + ".");}}else if(sendFlag==7){closeSocket();if(msgM.indexOf("1") >=0){resultMsg("关闭设备成功");}else{resultMsg("错误:关闭设备失败,"+msgM);}}}else{alert("连接异常,请检查是否成功安装千景J15S驱动!");}};}catch (ex) {alert("连接异常,请检查是否成功安装千景J15S驱动!");}}function resultMsg(msg) {document.getElementById("text_result").value += "\r\n" + msg;}</script>  </body>
</html>

身份证阅读器(读卡器)谷歌Chrome和火狐Firefox浏览器端网页开发接口控件分享相关推荐

  1. python ie、谷歌chrome、火狐firefox浏览器对应版本驱动下载

    ie对应版本的驱动下载地址:http://selenium-release.storage.googleapis.com/index.html,查看本机安装的selenium包版本是多少,然后下载对应 ...

  2. 谷歌Chrome、火狐FireFox 支持WebGL的设置

    1:谷歌Chrome的设置 ***如果chrome浏览器版本比较旧,请下载一个新版的浏览器 找到谷歌浏览器的快捷方式 鼠标右击快捷方式,打开属性面板 在目标后面加上 --enable-webgl -- ...

  3. python能调用身份证读卡器吗_最近的项目中用到读卡器,用的华视身份证阅读器,附上SDK使用手册...

    最近的项目中用到读卡器,用的华视身份证阅读器,附上SDK使用手册 1.定义 应用函数开发包含下列文件: termb.dll      API函数的动态联接库 sdtapi.dll     内部动态库 ...

  4. 最近的项目中用到读卡器,用的华视身份证阅读器,附上SDK使用手册

    <script type="text/javascript">// </script> <script type="text/javascr ...

  5. 分享:用Python语言轻松实现二代身份证阅读器(读卡器)自动读卡,支持定制开发

    人工智能的兴起,最近这段时间碰到很多开发工程师咨询Python语言二次开发使用身份证阅读器的问题,这次特增加了Python语言的demo,供大家参考使用. 先上Python界面的读取效果图: 1.说明 ...

  6. chrome pdf android,Android PDF阅读器 (基于谷歌平台的Adobe Reader)

    Android PDF阅读器 (基于谷歌平台的Adobe Reader):Adobe Reader 是用于打开和使用在 Adobe Acrobat 中创建的 Adobe PDF 的工具. 虽然无法在 ...

  7. 东控智能IDR-100U身份证阅读器怎么样?

    有人听说过这款身份证阅读器吗?外观可以定制,下面有它的介绍和一些参数 IDR-100U台式居民身份证读卡器 产品简介: IDR-100U台式居民身份证阅读机具是广东东控智能科技有限公司为各有关单位方便 ...

  8. VUE整合信通身份证阅读器返回读取到的数据或将身份证图片返回

    需求:身份证阅读器在浏览器上接入读取身份证信息 JAVA后端身份证图片合成https://blog.csdn.net/Ajie246862/article/details/125259692 1. 身 ...

  9. 公安部身份证阅读器模块SAM通讯协议

    公安部身份证阅读器模块SAM通讯协议 图为:公安部身份证阅读器SAM模块照片 图为:东信新一代小身份证SAM模块 支持Windows.Android.Linux.ARM.单片机等各系统二次开发. 一. ...

  10. 华视100UC 身份证阅读器 Java

    华视100UC 身份证阅读器 Java 哪位大佬有64位可用的dll文件,施舍给小弟吧,万分感谢 功能 环境 个人想法(有不对的地方希望大佬指正) 对于dll文件的想法 目录结构 1. pom.xml ...

最新文章

  1. python百度百科api-Python即时网络爬虫:API说明
  2. v380云存储怎么用_云智中国-百度智能云薄磊:海量无限存储,助力产业智能化升级...
  3. PHP学习总结(数据库概念、DDL语句、DML语句)
  4. C#.NET中的base关键字在派生类里的应用
  5. JavaScript实现TwoQueues缓存模型
  6. 夺命雷公狗---DEDECMS----26dedecms面包屑导航的实现
  7. Hadoop系列之五:MapReduce进阶(2)
  8. python get请求下载excel,前端开发,使用get和post方式下载excel表格
  9. python程序员前景-一个6年Python程序员的工作感悟,送给还在迷茫的你
  10. 光盘安装计算机系统安装教程,光盘重装系统|电脑光盘一键重装系统教程
  11. python怎么判断字符串中包含特殊符号
  12. ABtest系统是什么?
  13. java面向对象抽象类和接口
  14. C1实训-Java薪资转换(适合初学者)
  15. 聊一聊回收科技那些事儿
  16. 4K超高清电视全面支持HDMI技术
  17. iOS APP上线流程规范
  18. Datawhale组队学习周报(第022周)
  19. 一款个性、实用、无痕的浏览器(大学生的最爱)
  20. 这简直就是选择恐惧症的福音APP!

热门文章

  1. 火狐书签栏 谷歌_适用于Firefox的Google工具栏等
  2. 解决Excel表格输入身份证号码显示异常的问题
  3. 什么是DNS污染?DNS污染怎么办怎么解决?
  4. iOS 苹果企业账号申请流程
  5. 额定能量不得超过160Wh, 等同是多少mAh电池容量?
  6. 帧动画和骨骼动画 本质的理解
  7. 请立即停止刷博客流量
  8. SOFARPC —— SPI 解析
  9. GT传奇3服务器架设全攻略~!(新手篇)(转)
  10. Android获取视频文件时长