收藏
回答

OCR身份证的云调用,使用scan模式怎么传入图片的Buffer?

官方示例代码如下:

// cloud = require('wx-server-sdk')

// ...

// 方法返回 Promisecloud.openapi.ocr.idcard({

 type: 'photo',  img: {    contentType: 'image/png',    value: Buffer  }})

请问,value值Buffer是怎样得到的呢?

回答关注问题邀请回答
收藏

5 个回答

  • Welkin
    Welkin
    2019-09-16

    你好,value传入图片的二进制数据即可

    此外,建议使用photo模式,之后会对参数进行简化统一 :)

    2019-09-16
    有用
    回复 7
    • 冯志辉
      冯志辉
      2019-09-16
      photo是可以的,但是要求的是网络图片,想传二进制数据,但是不支持Buffer函数,只能说坑,呵呵!
      2019-09-16
      回复
    • Welkin
      Welkin
      2019-09-16回复冯志辉
      scan和photo都可以的,value跟的就是二进制,这是js中FormData的标准
      2019-09-16
      回复
    • 冯志辉
      冯志辉
      2019-09-16回复Welkin
      你是用的Node.js函数?npm安装?我不懂这个。本地图片怎么转换成buffer?
      2019-09-16
      回复
    • 张勇
      张勇
      2019-09-25
      同问
      2019-09-25
      回复
    • 蓬蒿人
      蓬蒿人
      2019-09-29
      层主好,https://developers.weixin.qq.com/community/develop/doc/000c6273418f183439398815a5f400,可见 OCR 通用文本识别一节的文档有错误。在尝试了若干次传递 img 参数后,始终报 fail media data missing 错误。因为有前车之鉴,我怀疑 img 参数部分是不是也错了。层主可不可以确认一下文档正确与否,再给出小程序端取得二进制码的示例?
      2019-09-29
      回复
    查看更多(2)
  • o0o有脾气的酸奶
    o0o有脾气的酸奶
    2019-10-15

    谢邀

    获取文件二进制内容

    https://developers.weixin.qq.com/miniprogram/dev/api/file/FileSystemManager.readFileSync.html


    云函数里也可以使用fs

    http://nodejs.cn/api/fs.html#fs_fs_readfilesync_path_options

    var fs = require('fs')

    var buffer = fs.readFileSync(filepath)


    2019-10-15
    有用 1
    回复 20
    • 冯志辉
      冯志辉
      2019-10-15
      FileSystemManager.readFile(Object object)返回的是ArrayBuffer,怎么得到buffer?
      2019-10-15
      回复
    • 张勇
      张勇
      2019-10-15
      没有用这个API,另外用的SDK,腾讯云的“image-node-sdk”,这是老版的SDK,新的SDK也还在尝试中
      const cloud = require('wx-server-sdk') 
      cloud.init({ 
        env: 'reaa-nkubd', 
        traceUser: true 
      }); 
       
      const { 
        ImageClient 
      } = require('image-node-sdk') 
      。。。。。。
      2019-10-15
      回复
    • 张勇
      张勇
      2019-10-15
      在GIT上去找这个SDK,上面有例子,我已经OCR成功了名片、身份证、营业执照,当然要开一个腾迅云的账户,但使用量不大的话是免费的。
      2019-10-15
      1
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2019-10-15回复张勇
      恩,你回复错人了吧
      2019-10-15
      回复
    • 冯志辉
      冯志辉
      2019-10-15回复o0o有脾气的酸奶
      Buffer这个函数是Node.js才有的,我目前就是不知怎样引入Node.js
      2019-10-15
      回复
    查看更多(15)
  • 张勇
    张勇
    2019-10-15

    我尝试用腾讯云中老版的SDK来解决了此问题,新的SDK还在摸索尝试中


    2019-10-15
    有用
    回复 2
    • 冯志辉
      冯志辉
      2019-10-15
      Buffer函数Node.js中才有,小程序没有获取Buffer的,你是怎样做的?
      2019-10-15
      回复
    • 张勇
      张勇
      2019-10-15回复冯志辉
      没有用这个API,另外用的SDK,腾讯云的“image-node-sdk”,这是老版的SDK,新的SDK也还在尝试中 
      const cloud = require('wx-server-sdk')  
      cloud.init({  
        env: 'reaa-nkubd',  
        traceUser: true  
      });  
        
      const {  
        ImageClient  
      } = require('image-node-sdk')  
      。。。。。。
      2019-10-15
      回复
  • Hanks🇨🇳
    Hanks🇨🇳
    2019-10-14

    谢邀,因为我主要语言是java,所以没有研究过云函数,没法帮到你

    2019-10-14
    有用
    回复 5
    • 冯志辉
      冯志辉
      2019-10-14
      谢谢。本人也是后端JAVA,目前是小程序JS没有函数获取buffer,但是node.js我又不懂。
      2019-10-14
      回复
    • Hanks🇨🇳
      Hanks🇨🇳
      2019-10-14回复冯志辉
      引入外部js也行呀?
      2019-10-14
      回复
    • 冯志辉
      冯志辉
      2019-10-14回复Hanks🇨🇳
      你做过的话,能给个示例看看吗?
      2019-10-14
      回复
    • Hanks🇨🇳
      Hanks🇨🇳
      2019-10-14回复冯志辉
      我没做过你那个
      在js顶部,引入你的js,然后在你下面的方法里边,直接就调用了,自己改路径和名字
      2019-10-14
      回复
    • 冯志辉
      冯志辉
      2019-10-15
      我不会Node.js,但是Buffer函数是Node.js的,我能引入使用?
      2019-10-15
      回复
  • 老张
    老张
    2019-09-16

    想知道+1

    2019-09-16
    有用
    回复
登录 后发表内容
问题标签