uniapp微信小程序证件识别
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微信小程序证件识别相关推荐
- uni-app 微信小程序端-AirKiss一键配网
uni-app 微信小程序端-AirKiss一键配网 发现网上很多关于微信小程序配网的文章都是微信小程序原生开发,uni-app少之又少.这篇文章就介绍一下怎么在HBuilder X使用airkiss ...
- vue uniapp 微信小程序 搜索下拉框 模糊搜索
vue uniapp 微信小程序 搜索下拉框 模糊搜索 话不多说 直接贴代码 template <template><view class="index"> ...
- uni-app微信小程序登录授权
uni-app微信小程序登录授权 首先是需要用到一个授权按钮来触发获取用户信息授权: 关键在于 open-type 为 getUserInfo , 然后有个@getuserinfo的事件,把获取授权接 ...
- 微信小程序中识别html标签的方法
微信小程序中识别html标签的方法 前言 rich-text组件 前言 在后台接口返回的数据中有些会带有标签,在微信小程序中如何将其直接渲染在页面呢? rich-text组件 在微信小程序中有一个组件 ...
- 【大白话学习】UniApp 微信小程序与APP应用 开发零基础入门教程(一)---基础页面框架搭建
写在前面话: 随着互联网的快速发展,微信小程序应用的快速便捷,不用下载安装等的优势越来越明显,于是,我就开始着手于小程序开发的学习,虽然微信提供了开发工具,但它只能生成小程序 ,不能生成APP,那么有 ...
- uniapp 微信小程序开发 图片上传压缩
uniapp 微信小程序开发 图片上传压缩 安卓上传图片并压缩 思路 全部代码 安卓上传图片并压缩 由于后端接口对图片的大小有限制,所以在上传图片是需要压缩处理: uni.chooseImage({c ...
- uniapp微信小程序授权登录和获取微信绑定的手机号码
uniapp微信小程序授权登录和获取微信绑定的手机号码 弹出授权的弹框 <view class="weixinOk" @tap="getUserProfile&qu ...
- uni-app 微信小程序实现全屏悬浮按钮可拖动,自动吸附边缘
原文链接:uni-app 微信小程序实现全屏客服按钮可拖动,自动吸边-小月博客 效果图如下: html : <movable-area class="movableArea" ...
- uni-app 微信小程序分享按钮
uni-app 微信小程序分享按钮 官方文档说明 在 manifest.json 的 App SDK 配置里,勾选微信消息及朋友圈,并填写相关 appkey,微信 appkey 在需要分享的页面填写: ...
最新文章
- 外卖小哥转行IT面完阿里后,又回去送外卖了,真实经历!
- 关于JSON的一些问题
- 【.NET Core项目实战-统一认证平台】第四章 网关篇-数据库存储配置(2)
- 802.11n 中HT20 HT40的区别和信道划分
- 对比Excel,学习pandas数据透视表
- 创建第一个WCF程序
- NC107617 poj3020 Antenna Placement
- 使用js设置ul标签的显示或隐藏和超链接调用js文件的方法
- python 白化_MeteoInfo和Python显著性检验
- 旷视科技IPO过会,AI技术“立业”难言轻松
- 如何搭建VUE环境?
- UVA12169模运算
- 机器学习NLP领域入门
- 2500个常用汉字列表
- matlab中变压器的仿真,基于MATLAB的稳压变压器建模与仿真
- 程序员如何恢复被清空的回收站——记录一下
- 气人!终于知道为什么华为手机删了照片,存储空间还是不足了!
- bugku--PHP代码审计-sha()函数比较绕过
- MATLAB人工神经网络的手写数字识别系统
- 强化学习-策略迭代代码实现
热门文章
- 今天通过了 AWS 的 SAA 认证考试了
- SELinux零知识学习四、Audit应用层源码下载、编译和安装
- varchar和char的区别
- macbook air扩展显示器全屏滑动怎样不一起滑动?
- 【苹果CMS技术教程】苹果CMSV10宝塔全自动定时采集教程
- 项目经营,不仅仅停留在嘴上:政企项目,要做好项目交付,但又不能仅仅止步于“项目交付”
- 搭建webdav文件共享服务器,使用Nginx搭建WebDav作为简易共享空间
- 60-网络分层的真实含义是什么?
- 基于EasyCVR视频技术的“互联网+监管”非现场监管视频监控系统设计方案
- 在线订舱物流详情 广州力其