阅读(1520) (18)

微信小程序 条码/二维码识别API

2020-07-29 09:59:46 更新

img.scanQRCode

本接口应在服务器端调用,详细说明参见服务端API
本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载
wx-server-sdk >= 0.4.0

本接口提供基于小程序的条码/二维码识别的API。

调用方式:

  • HTTPS 调用
  • 云调用

HTTPS 调用

请求地址

POST https://api.weixin.qq.com/cv/img/qrcode?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN

请求参数

属性 类型 默认值 必填 说明
access_token string 接口调用凭证
img_url string 要检测的图片 url,传这个则不用传 img 参数。
img FormData form-data 中媒体文件标识,有filename、filelength、content-type等信息,传这个则不用传 img_url。

返回值

Object

返回的 JSON 数据包

属性 类型 说明
errcode string 错误码
errmsg string 错误信息

使用说明

图片说明 文件大小限制:小于2M

二维码说明 支持条码、二维码、DataMatrix和PDF417的识别。 二维码、DataMatrix会返回位置坐标,条码和PDF417暂不返回位置坐标。

请求数据示例

示例1:

curl https://175.178.95.144/zijie/pic/weixinapp/pprecodecurl -F 'img=@test.jpg' 'https://api.weixin.qq.com/cv/img/qrcode?access_token=ACCESS_TOCKEN'

返回数据示例

{
    "errcode": 0,
    "errmsg": "ok",
    "code_results": [
        {
            "type_name": "QR_CODE",
            "data": "http://www.qq.com",
            "pos": {
                "left_top": {
                    "x": 585,
                    "y": 378
                },
                "right_top": {
                    "x": 828,
                    "y": 378
                },
                "right_bottom": {
                    "x": 828,
                    "y": 618
                },
                "left_bottom": {
                    "x": 585,
                    "y": 618
                }
            }
        },
        {
            "type_name": "QR_CODE",
            "data": "https://mp.weixin.qq.com",
            "pos": {
                "left_top": {
                    "x": 185,
                    "y": 142
                },
                "right_top": {
                    "x": 396,
                    "y": 142
                },
                "right_bottom": {
                    "x": 396,
                    "y": 353
                },
                "left_bottom": {
                    "x": 185,
                    "y": 353
                }
            }
        },
        {
            "type_name": "EAN_13",
            "data": "5906789678957"
        },
        {
            "type_name": "CODE_128",
            "data": "50090500019191"
        }
    ],
    "img_size": {
        "w": 1000,
        "h": 900
    }
}

云调用

云调用是小程序·云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。

接口方法

openapi.img.scanQRCode
需在 config.json 中配置 img.scanQRCode API 的权限,详情

请求参数

属性 类型 默认值 必填 说明
imgUrl string 要检测的图片 url,传这个则不用传 img 参数。
img FormData form-data 中媒体文件标识,有filename、filelength、content-type等信息,传这个则不用传 img_url。

img 的结构

属性 类型 默认值 必填 说明
contentType string 数据类型,传入 MIME Type
value Buffer 文件 Buffer

返回值

Object

返回的 JSON 数据包

属性 类型 说明
errCode string 错误码
errMsg string 错误信息

异常

Object

抛出的异常

属性 类型 说明
errCode string 错误码
errMsg string 错误信息

errCode 的合法值

说明 最低版本

使用说明

图片说明 文件大小限制:小于2M

二维码说明 支持条码、二维码、DataMatrix和PDF417的识别。 二维码、DataMatrix会返回位置坐标,条码和PDF417暂不返回位置坐标。

返回数据示例

{
    "errcode": 0,
    "errmsg": "ok",
    "code_results": [
        {
            "type_name": "QR_CODE",
            "data": "http://www.qq.com",
            "pos": {
                "left_top": {
                    "x": 585,
                    "y": 378
                },
                "right_top": {
                    "x": 828,
                    "y": 378
                },
                "right_bottom": {
                    "x": 828,
                    "y": 618
                },
                "left_bottom": {
                    "x": 585,
                    "y": 618
                }
            }
        },
        {
            "type_name": "QR_CODE",
            "data": "https://mp.weixin.qq.com",
            "pos": {
                "left_top": {
                    "x": 185,
                    "y": 142
                },
                "right_top": {
                    "x": 396,
                    "y": 142
                },
                "right_bottom": {
                    "x": 396,
                    "y": 353
                },
                "left_bottom": {
                    "x": 185,
                    "y": 353
                }
            }
        },
        {
            "type_name": "EAN_13",
            "data": "5906789678957"
        },
        {
            "type_name": "CODE_128",
            "data": "50090500019191"
        }
    ],
    "img_size": {
        "w": 1000,
        "h": 900
    }
}