Skip to content

[weixin-java-mp] OCR识别接口完全缺失(7种证件类型均无实现) #4006

@binarywang

Description

@binarywang

问题描述

模块: weixin-java-mp
问题类型: 缺失功能
严重程度: 🔴 High

微信公众号服务号提供了完整的OCR识别能力(文档:https://developers.weixin.qq.com/doc/offiaccount/Intelligent_Interface/OCR_API.html),共支持7种证件类型的识别:

接口路径 识别类型 状态
cv/ocr/menu 菜单识别 ❌ 缺失
cv/ocr/comm 通用印刷体识别 ❌ 缺失
cv/ocr/driving 行驶证识别 ❌ 缺失
cv/ocr/bankcard 银行卡识别 ❌ 缺失
cv/ocr/bizlicense 营业执照识别 ❌ 缺失
cv/ocr/drivinglicense 驾驶证识别 ❌ 缺失
cv/ocr/idcard 身份证识别 ❌ 缺失

SDK中 WxMpOcrService 接口存在但为空接口(无任何方法定义),开发者完全无法通过SDK使用这些能力。

当前状态

weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpOcrService.java

该文件仅包含package和import声明,无任何方法。

影响场景

  • 无法识别身份证、驾驶证、银行卡、营业执照等证件
  • 无法识别通用印刷体文字
  • 无法识别菜单和行驶证
  • 开发者必须绕过SDK自行调用HTTP接口

建议修复

WxMpOcrService 中实现7个OCR识别方法:

public interface WxMpOcrService {
    /**
     * 身份证识别
     * POST cv/ocr/idcard
     */
    WxMpOcrIdCardResult idCard(byte[] imageData) throws WxErrorException;

    /**
     * 银行卡识别
     * POST cv/ocr/bankcard
     */
    WxMpOcrBankCardResult bankCard(byte[] imageData) throws WxErrorException;

    /**
     * 行驶证识别
     * POST cv/ocr/driving
     */
    WxMpOcrDrivingResult driving(byte[] imageData) throws WxErrorException;

    /**
     * 驾驶证识别
     * POST cv/ocr/drivinglicense
     */
    WxMpOcrDrivingLicenseResult drivingLicense(byte[] imageData) throws WxErrorException;

    /**
     * 营业执照识别
     * POST cv/ocr/bizlicense
     */
    WxMpOcrBizLicenseResult bizLicense(byte[] imageData) throws WxErrorException;

    /**
     * 通用印刷体识别
     * POST cv/ocr/comm
     */
    WxMpOcrCommResult comm(byte[] imageData) throws WxErrorException;

    /**
     * 菜单识别
     * POST cv/ocr/menu
     */
    WxMpOcrMenuResult menu(byte[] imageData) throws WxErrorException;
}

环境信息

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions