微信小程序怎么读取居民身份证?

这篇具有很好参考价值的文章主要介绍了微信小程序怎么读取居民身份证?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

微信小程序怎么读取身份证?

1、介绍一下微信小程序开发步骤

        熟悉开发工具:首先,你需要了解微信小程序开发工具有哪些相关的知识。微信小程序开发工具提供了图形化开发环境,使得开发者能够更容易地进行小程序的开发工作。这是基础的一步。编写小程序代码:微信小程序采用类似HTML、CSS和JavaScript等Web前端技术进行开发。你需要掌握这些基础知识,并根据具体业务需求编写各种小程序功能。这是开发过程中最重要的一步,需要深入理解并运用这些技术。功能测试:在编写完小程序代码之后,你需要使用微信开发工具进行模拟器测试以验证功能是否正常。这是一个非常重要的步骤,可以帮助你及早发现并修复可能存在的问题。

        上传并发布:完成功能测试后,你需要将小程序上传到微信小程序的开放平台,并通过一系列审核流程,最终发布小程序。这一步需要耐心等待,一旦通过审核,你的小程序就可以向公众展示。以上就是微信小程序开发的完整流程,每个步骤都至关重要,需要开发者认真对待。

2、进入微信小程序身份证读取插件官网地址

海飞思Pro+ | 小程序插件 | 微信公众平台

必备条件:运行小程序的设备或手机,必须开启NFC功能

微信小程序怎么读取居民身份证?,微信小程序,notepad++,小程序

3、根据插件集成说明集成

中软高科·小程序身份证云解码插件

1、引入插件

在小程序的app.json中,加入插件。

"plugins": {

    "readcard-plugin": {

      "version": "2.0.0",

      "provider": "wxa2583ebacdb87a6a"

    }

}

2、基础库

调试基础库  2.18.1及以上

微信版本:

iOS      暂不支持

Android  8.0.6及以上版本

3、使用插件

在需要使用身份证读卡的页面中,使用插件。

const plugin = requirePlugin('readcard-plugin');

var StatusCode = null;

var that = this;

var initSuccess = false;

Page({

  data: {

    idCardInfo: null,

  },

  onLoad() {

    that = this;

    StatusCode = plugin.StatusCodeEnum();

    console.log("对照状态码:", StatusCode);

    // 设置APPID (开始读卡之前,必须设置)

    plugin.setAppId("appid联系我司商务获取");

    // 设置读卡SDK参数

    that.readSetting();

    // 初始化NFC读卡。

    // 初始化之前,请先自行判断设备是否支持NFC、系统NFC开关是否打开

    that.initRead();

  },

  // 设置读卡SDK参数

  readSetting(){

    // 日志保存目录

    // 默认在 Android/data/com.tencent.mm/MicroMsg/wxanewfiles目录下   搜索 zrgk_mini_log

    // 不需要日志时,可以不设置

    plugin.setShowLog(wx.getFileSystemManager(), wx.env.USER_DATA_PATH);

    // 读卡参数设置,根据需要自行修改参数值,参数名称及类型不可修改。

    var _Setting = {

      decodeImageType: "dn1", // dn0: 无照片   dn1: 平台解码照片

      saveLog: false, // 是否保存日志文件。设置true时,必须调用以上的 plugin.setShowLog(); 设置日志保存的目录

      openLocalCache: true, // 是否开启本地缓存

      // 解码服务器配置。

      // 默认第1个为主服务器,优先使用。

      // 其余皆为备用服务器,主服务器异常时自动切换启用

      ipPortArray: [{

        address: 'yfs3.sfzydq.com',

        port: 9999,

        canUse: true

      }, {

        address: "yjm2.sfzydq.com",

        port: 9999,

        canUse: true

      }]

    };

    // 将参数设置给插件

    plugin.readSetting(_Setting);

  },

  // 初始化 读卡示例代码

  initRead() {

    if (initSuccess == true) {

      wx.showToast({

        title: '已经初始化过了',

        icon: 'none'

      });

      return;

    }

    // 初始化并开始读卡

    plugin.startReadCard(function (code, msg, value, cardType) {

      that.setData({

        msg: "code:" + code + "\n" + "msg:" + msg,

      });

      switch (code) {

        case StatusCode.ININ_OK.code: // 初始化成功

          initSuccess = true;

          wx.showToast({

            title: '初始化成功',

            icon: 'success'

          });

          break;

        case StatusCode.ININ_FAILE.code: // 初始化失败

          initSuccess = false;

          if (msg.indexOf("13000") != -1) {

            wx.showModal({

              title: '温馨提示',

              content: '设备不支持NFC',

              complete: (res) => {

              }

            });

          } else if (msg.indexOf("13001") != -1) {

            wx.showModal({

              title: '温馨提示',

              content: '系统NFC开关未打开',

              complete: (res) => {

              }

            });

          } else {

            wx.showToast({

              title: msg,

              icon: 'error'

            })

          }

          break;

        case StatusCode.READ_NFC_TAG.code: // 识别到NFC标签

          wx.showLoading({

            title: '请勿移动卡片',

          });

          break;

        case StatusCode.READCARD_SUCCESS.code: // 解码成功

          wx.hideLoading();

          wx.showToast({

            title: '解码成功',

            icon: 'success'

          });

          switch (cardType) {

            case StatusCode.CARD_IC.code: // IC卡

              console.log("IC卡:" , value);

              break;

            case StatusCode.CARD_LCT_STUDENT.code: // 绿城通学生卡

              console.log("绿城通学生卡:" , value);

              break;

            case StatusCode.CARD_LCT_NORMAL.code: // 绿城通普通卡

              console.log("绿城通普通卡:" , value);

              break;

            case StatusCode.CARD_LCT_OLD.code: // 绿城通老年卡

              console.log("绿城通老年卡:" , value);

              break;

            case StatusCode.CARD_IDCARD.code: // 身份证

              // 读取到的身份证信息

              var idCardInfo = JSON.parse(value);

              console.log("身份证信息:" , idCardInfo);

              // 当设置平台解码身份证照片时,

              // idCardInfo.image字段,为base64编码的照片字符串,可直接用于显示

              // idCardInfo.type=1080 中国居民身份证

              // idCardInfo.type=1081 外国永久居住证

              // idCardInfo.type=1082 港澳台居住证

              break;

          }

          break;

        case StatusCode.READCARD_FAILE.code: // 解码失败

          wx.hideLoading();

          wx.showToast({

            title: '解码失败' + StatusCode.READCARD_FAILE.code,

            icon: 'error'

          });

          break;

      }

    });

  },

  /**

   * 生命周期

   */

  onShow() {

    console.log("onShow", "界面显示");

  },

  onHide() {

    console.log("onHide", "界面隐藏");

  },

  onUnload() {

    console.log("onUnload", "界面销毁,需要停止读卡");

    plugin.stopReadCard();

  }

})

4、配置TCP合法域名

必须将参数配置时,配置的 ipPortArray 参数中的所有服务器地址,加入到合法的TCP域名,

否则无法访问到服务器。

如配置:

tcp://yjm2.sfzydq.com

tcp://yfs3.sfzydq.com

4、温馨提示

可以先试用默认DEMO做一下读取身份证的体验²海飞思微信读卡小程序试用方式:微信界面,下拉通知框,搜索“海飞思”即可。文章来源地址https://www.toymoban.com/news/detail-805102.html

到了这里,关于微信小程序怎么读取居民身份证?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp 微信小程序 - 调起手机摄像头: 拍摄身份证的正反面,自定义身份证取景框,在相机上绘制 “身份证轮廓“ 与提示文字(超详细示例源码,一键复制运行开箱即用)

    这个需求很难在网上找到,就算找到都是很乱的代码。。 本篇博客实现了在uniapp项目中,微信小程序平台下调起手机相机照身份证功能,在相机上添加辅助框、自定义文案或图片(给相机加上身份证辅助线的轮廓),并且解决了 “拒绝相机默认授权后,无法再次拉起相机授

    2024年02月09日
    浏览(227)
  • 微信小程序-读取数据

    在开发微信小程序的时候,我们经常都会用到一些配置数据,或者当做“单向数据库(只读)”使用。 我们新建一个新的项目工程,JS版本就可以。 免于麻烦,我们新建一个page(showdata)来显示数据。 为了方便管理,我们在项目工程新建一个目录(data),用于存数据。另外

    2024年02月15日
    浏览(40)
  • 微信小程序读取本地json

    首先在项目录下新建【server】文件夹,新建data.js文件,并定义好json数据格式。如下: pages/index/index.ts导入data.js并请求json pages/index/index.wxml页面展示数据  

    2024年02月14日
    浏览(42)
  • 微信小程序nfc读取数据

        微信官方文档说明确实太模糊了也没有示例代码,真是研究了半天才摸清楚,话不多说上代码。希望能帮助到大家!   // nfc识别     nfcRead() {         var that = this;         const adapter = wx.getNFCAdapter();         console.log(\\\"获取NFC实例\\\", adapter)         

    2024年02月07日
    浏览(39)
  • 微信小程序nfc读取M1卡数据

       如果没看过我另一篇nfc读卡数据的可以去看一下,里面有一些描述可以帮助到大家。 刚通过测试代码还没有优化,有什么问题大家也可以提出来。 本次是nfc读取m1卡数据的,m1卡数据是有密钥分扇区的所以大家一定要问清楚写入卡数据的同学他吧数据写入到了那个扇区以

    2024年01月21日
    浏览(85)
  • 【微信小程序怎么开店铺】微信小程序店铺怎么制作?

    【微信小程序怎么开店铺】微信小程序店铺怎么制作?线上开店已经是当下非常主流的经营模式之一,尤其是微信小程序,微信小程序在近几年的普及和发展下,大有超越app的使用率。因此,把线上开店铺和微信小程序结合起来,就成为了当下许多企业商家的共同选择。那么

    2024年02月09日
    浏览(46)
  • 微信小程序读取NFC卡片数据,NDEF-M1

    最近来了个离谱的需求,要用微信小程序读写NFC卡数据,微信官方文档可以说是垃圾的一批了,啥都没有,踩了好几天坑把整体思路记录一下。 如果需要DEMO可直达下载链接: https://download.csdn.net/download/weixin_65984842/87703559 首先调用微信自带的方法 然后在onload中利用 onDiscover

    2024年02月13日
    浏览(154)
  • 微信小程序如何读取本地云存储txt数据,避免乱码

    找到你的txt文件,重命名为json文件 上传到云存储中,获取File ID 编写js代码 相关技术文档: https://developers.weixin.qq.com/miniprogram/dev/api/file/FileSystemManager.readFile.html

    2024年02月12日
    浏览(50)
  • uniapp读取(获取)缓存中的对象值(微信小程序)

    大家好!我是夏小花,今天是 2024年4月24日|农历三月十六 ,在我们日常开发中,做小程序可能会往缓存中存值或者是存对象,今天这篇博客文章主要是讲如何在微信小程序如何读取缓存中的值和如何向缓存中存值。 满满干货哦!!! 下面这段代码是基于uniapp进行向缓中存值

    2024年04月25日
    浏览(57)
  • 微信小程序文件相关操作(新建文件夹、下载、解压、读取等)

    wx.downloadFile()  //下载 wx.getFileSystemManager()  //获取小程序的文件管理器 FileSystemManager.unzip() //解压 FileSystemManager.readdir()  //读取文件夹 FileSystemManager.readFile()  //读取文件 FileSystemManager.access() //判断文件/目录是否存在 FileSystemManager.mkdir()  //创建文件夹 index.js 在 onload 中获取 F

    2024年02月15日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包