1.百度云开发注册与配置-接入百度OCR

官网:https://ai.baidu.com/

2.获取access_token,根据图4中的api和secret获取

参考:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu

请求URL数据格式

向授权服务地址https://aip.baidubce.com/oauth/2.0/token发送请求(推荐使用POST),并在URL中带上以下参数:

  • grant_type: 必须参数,固定为client_credentials
  • client_id: 必须参数,应用的API Key
  • client_secret: 必须参数,应用的Secret Key

例如:

getUsers() {
            uni.request({
                url:'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=API Key&client_secret=Secret Key',
                success:res=>{
                    console.log('access_token',res.data.access_token)
                    let obj = res.data.access_token;
                    // uni.setStorage({
                    //     key:'accsee_token',
                    //     data:obj,
                    //     success: () => {
                    //         console.log('success')
                    //         this.getcarno()
                    //     }
                    // })
                    this.access_token=obj
                    this.getIDCard()
                },
                error:err=>{
                    console.log('err',err)
                }
            })

打印得到access_token

3.得到access_token便可获取图中信息

参考:https://www.cnblogs.com/masterchd/p/12452005.html

请求示例

HTTP 方法:POST

请求URL: https://aip.baidubce.com/rest/2.0/ocr/v1/idcard(根据需求在图四中选择你的地址)

URL参数:

参数
access_token 通过API Key和Secret Key获取的access_token,参考第二步

Header如下:

参数
Content-Type application/x-www-form-urlencoded

Body中放置请求参数,参数详情如下:

请求参数

参数 是否必选 类型 可选值范围 说明
image string - 图像数据,base64编码后进行urlencode,要求base64编码和urlencode后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/jpeg/png/bmp格式
id_card_side string front/back front:身份证含照片的一面;back:身份证带国徽的一面
detect_direction string true/false 是否检测图像旋转角度,默认检测,即:true。朝向是指输入图像是正常方向、逆时针旋转90/180/270度。可选值包括: - true:检测旋转角度; - false:不检测旋转角度。
detect_risk string true/false 是否开启身份证风险类型(身份证复印件、临时身份证、身份证翻拍、修改过的身份证)功能,默认不开启,即:false。可选值:true-开启;false-不开启
detect_photo string true/false 是否检测头像内容,默认不检测。可选值:true-检测头像并返回头像的 base64 编码及位置信息
detect_rectify string true/false 是否进行完整性校验,默认为true,需上传各字段内容完善的图片方可识别;如果设置为false,则对于身份证切片(如仅身份证号区域)也可识别

示例:
3.1自定义文件 profunc.js,实现函数并封装

function OcrIdCard(access_token){
  return new Promise(function(resolve,reject){
    var that = this;
    //识别身份证
    wx.chooseImage({
      count: 1,
      sizeType: ['compressed'],
      sourceType: ['album', 'camera'],
      success: function (res) {
        console.log(res.tempFilePaths)
          //核心代码
        wx.getFileSystemManager().readFile({
          filePath: res.tempFilePaths[0],
          encoding: 'base64', //编码格式
          success(ans) {
            // console.log(ans.data)
            wx.showLoading({ title: '识别中' })
            wx.request({
              url: '图四中的地址?access_token=' + access_token,
              method: 'POST',
              header: {
                'Content-Type': 'application/x-www-form-urlencoded'
              },
              data: {
                image: ans.data,
                id_card_side: 'front'
              },
              success(_res) {
                wx.hideLoading();
                resolve(_res)
                
              }, fail(_res) {
                wx.hideLoading();
                wx.showToast({
                  title: '请求出错',
                })
                reject(_res)
              }
            })
          }
        })
      }
    })
  })
}

module.exports = {
  OcrIdCard: OcrIdCard
}

3.2页面引用,需要传入access_token

import cwx from './profunc.js'
      getIDCard() {
                var that = this;
                    cwx.OcrIdCard(that.access_token).then(function(_res){
                        var trdata = _res.data.words_result;
                        console.log('trdata',trdata)
                        // that.setData({
                        //   name: trdata['姓名'].words,
                        //   idcard: trdata['公民身份号码'].words,
                        //   userloc: trdata['住址'].words
                        // })
                    })    
            },

打印得到图中信息

uniapp微信小程序证件识别相关推荐

  1. uni-app 微信小程序端-AirKiss一键配网

    uni-app 微信小程序端-AirKiss一键配网 发现网上很多关于微信小程序配网的文章都是微信小程序原生开发,uni-app少之又少.这篇文章就介绍一下怎么在HBuilder X使用airkiss ...

  2. vue uniapp 微信小程序 搜索下拉框 模糊搜索

    vue uniapp 微信小程序 搜索下拉框 模糊搜索 话不多说 直接贴代码 template <template><view class="index"> ...

  3. uni-app微信小程序登录授权

    uni-app微信小程序登录授权 首先是需要用到一个授权按钮来触发获取用户信息授权: 关键在于 open-type 为 getUserInfo , 然后有个@getuserinfo的事件,把获取授权接 ...

  4. 微信小程序中识别html标签的方法

    微信小程序中识别html标签的方法 前言 rich-text组件 前言 在后台接口返回的数据中有些会带有标签,在微信小程序中如何将其直接渲染在页面呢? rich-text组件 在微信小程序中有一个组件 ...

  5. 【大白话学习】UniApp 微信小程序与APP应用 开发零基础入门教程(一)---基础页面框架搭建

    写在前面话: 随着互联网的快速发展,微信小程序应用的快速便捷,不用下载安装等的优势越来越明显,于是,我就开始着手于小程序开发的学习,虽然微信提供了开发工具,但它只能生成小程序 ,不能生成APP,那么有 ...

  6. uniapp 微信小程序开发 图片上传压缩

    uniapp 微信小程序开发 图片上传压缩 安卓上传图片并压缩 思路 全部代码 安卓上传图片并压缩 由于后端接口对图片的大小有限制,所以在上传图片是需要压缩处理: uni.chooseImage({c ...

  7. uniapp微信小程序授权登录和获取微信绑定的手机号码

    uniapp微信小程序授权登录和获取微信绑定的手机号码 弹出授权的弹框 <view class="weixinOk" @tap="getUserProfile&qu ...

  8. uni-app 微信小程序实现全屏悬浮按钮可拖动,自动吸附边缘

    原文链接:uni-app 微信小程序实现全屏客服按钮可拖动,自动吸边-小月博客 效果图如下: html : <movable-area class="movableArea" ...

  9. uni-app 微信小程序分享按钮

    uni-app 微信小程序分享按钮 官方文档说明 在 manifest.json 的 App SDK 配置里,勾选微信消息及朋友圈,并填写相关 appkey,微信 appkey 在需要分享的页面填写: ...

最新文章

  1. 外卖小哥转行IT面完阿里后,又回去送外卖了,真实经历!
  2. 关于JSON的一些问题
  3. 【.NET Core项目实战-统一认证平台】第四章 网关篇-数据库存储配置(2)
  4. 802.11n 中HT20 HT40的区别和信道划分
  5. 对比Excel,学习pandas数据透视表
  6. 创建第一个WCF程序
  7. NC107617 poj3020 Antenna Placement
  8. 使用js设置ul标签的显示或隐藏和超链接调用js文件的方法
  9. python 白化_MeteoInfo和Python显著性检验
  10. 旷视科技IPO过会,AI技术“立业”难言轻松
  11. 如何搭建VUE环境?
  12. UVA12169模运算
  13. 机器学习NLP领域入门
  14. 2500个常用汉字列表
  15. matlab中变压器的仿真,基于MATLAB的稳压变压器建模与仿真
  16. 程序员如何恢复被清空的回收站——记录一下
  17. 气人!终于知道为什么华为手机删了照片,存储空间还是不足了!
  18. bugku--PHP代码审计-sha()函数比较绕过
  19. MATLAB人工神经网络的手写数字识别系统
  20. 强化学习-策略迭代代码实现

热门文章

  1. 今天通过了 AWS 的 SAA 认证考试了
  2. SELinux零知识学习四、Audit应用层源码下载、编译和安装
  3. varchar和char的区别
  4. macbook air扩展显示器全屏滑动怎样不一起滑动?
  5. 【苹果CMS技术教程】苹果CMSV10宝塔全自动定时采集教程
  6. 项目经营,不仅仅停留在嘴上:政企项目,要做好项目交付,但又不能仅仅止步于“项目交付”
  7. 搭建webdav文件共享服务器,使用Nginx搭建WebDav作为简易共享空间
  8. 60-网络分层的真实含义是什么?
  9. 基于EasyCVR视频技术的“互联网+监管”非现场监管视频监控系统设计方案
  10. 在线订舱物流详情 广州力其