服务端 API 文档

快速集成(小程序 )

最近更新时间:2021-03-16 15:45:54

开发准备

  1. 注册腾讯云账号,单击进入 文字识别控制台,即可开通相应服务。
  2. 账号中心 获取 API 密钥。
  3. 从 OCR SDK 下载链接中下载 SDK 到本地准备集成。

小程序端 OCR SDK 接入流程

小程序端 OCR SDK 介绍

SDK 中包含了两个页面:

  • id-card - 身份证识别页面(包含正反面,且不可拆分)
  • index - 其他模式识别页面(身份证正面、身份证反面、银行卡、名片,彼此相互独立)

环境依赖

开发工具使用微信开发者工具,基础库 2.12.2 或以上版本

业务流程

SDK 的核心诉求是能够让开发者专注于自己业务的开发,而无需过多关注 OCR 实现原理。为此,SDK 将整个 OCR 识别的过程进行打包,提供完整的识别能力(从图片的拍摄/选择,到最终的识别结果输出)。


业务流程时序图

接入步骤

  1. 配置合法域名
    在微信公众平台服务器域名配置中,将 https://ocr.tencentcloudapi.com 添加到 request 合法域名中。
  2. 导入 SDK
    将 SDK 包中 ocrsdk 目录放入小程序根目录中.
  3. 添加 SDK 页面配置
    根据您的需求在小程序 app.json 文件中添加 SDK 页面。
    "pages": [
    //...,
    "ocrsdk/pages/id-card/id-card", // 身份证识别页面(包含正反面)
    "ocrsdk/pages/index/index", // 其他模式识别页面(身份证正面、身份证反面、银行卡、名片,彼此相互独立)
    ],
  1. 在需要使用 SDK 的页面中引入包

    const ocrSdk = require("/ocrsdk/index");
  2. 调用以下方法进入对应卡证识别页面

    ocrSdk.start({
     getAuthorization: function() {
       return new Promise((resolve, reject) => {
         wx.request({
           url: '您服务器端获取临时密钥的接口地址', // 填写您服务器端的接口地址,获取临时密钥
           method: "POST",
           data: {
             option // 您自定义的参数
           },
           success(res) {
             let credentials = res.Credentials;
             resolve({
               temSecretId: credentials.TmpSecretId,
               temSecretKey: credentials.TmpSecretKey,
               token: credentials.Token,
             })
           },
           fail(err) {
             resolve(err)
             wx.navigateTo({
               url: '您的小程序页面',
             });
           }
         })
       })
     },
     secretId: '**************', // 不推荐在生产环境中使用固定密钥
     secretKey: '**************', // 不推荐在生产环境中使用固定密钥
     ocrType: ocrSdk.OcrType.ID_CARD,
     ocrOption: {
       Config: {
         "CropIdCard": true,
         "CropPortrait": true
       }
     },
     cameraConfig: {
       autoMode: true,
       maxTry: 3,
     },
     resultPage: true,
     resultPageConfig: {
       modifiable: true,
     },
     theme: 'primary',
     success: (res) => {
       console.log('ocr result is:', res)
       wx.navigateTo({
         url: '您的小程序页面',
       })
     },
     fail: (error)=> {
       console.log('ocr failed:', error)
     }
    });

方法中具体参数请参见 SDK 接口说明

目录