阿里云ocr身份证识别接口调用

1、阿里云界面点击搜索ocr,选择文字识别,开通服务,默认已登录阿里云账号
阿里云ocr身份证识别接口调用_第1张图片
2、选择个人证件识别,身份证识别(每个月赠送200次体验)
阿里云ocr身份证识别接口调用_第2张图片
3、点击产品文档
阿里云ocr身份证识别接口调用_第3张图片
4、下拉到最后,选择RecognizeIdcard点击,进入身份证识别界面
阿里云ocr身份证识别接口调用_第4张图片

5、点击进入调试页面
阿里云ocr身份证识别接口调用_第5张图片
6、上传身份证照片,点击发起调用,调用结果显示成功!网上测试完成,下面复制到本地工程!
阿里云ocr身份证识别接口调用_第6张图片
7、引入依赖导本地工程
阿里云ocr身份证识别接口调用_第7张图片
8、粘贴代码到本地
阿里云ocr身份证识别接口调用_第8张图片
9、查询accessKeyId和accessKeySecret码
阿里云ocr身份证识别接口调用_第9张图片
10、替换代码中的值
阿里云ocr身份证识别接口调用_第10张图片
11、附上源码

package com.jeesite.modules.aliyun.ocr.web;

import com.alibaba.fastjson.JSON;
import com.aliyun.ocr_api20210707.models.RecognizeIdcardResponse;
import com.aliyun.ocr_api20210707.models.RecognizeIdcardResponseBody;
import com.aliyun.tea.*;
import com.jeesite.common.config.Global;
import com.jeesite.common.web.BaseController;
import com.jeesite.modules.aliyun.ocr.entity.IdCardRoot;
import lombok.SneakyThrows;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;

@Controller
@RequestMapping(value = "f/aliyun/ocr/ocrSampleController")
public class OcrSampleController {

    /**
     * 使用AK&SK初始化账号Client
     * @param accessKeyId
     * @param accessKeySecret
     * @return Client
     * @throws Exception
     */
    public static com.aliyun.ocr_api20210707.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
        com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                // 您的 AccessKey ID
                .setAccessKeyId(accessKeyId)
                // 您的 AccessKey Secret
                .setAccessKeySecret(accessKeySecret);
        // 访问的域名
        config.endpoint = "ocr-api.cn-hangzhou.aliyuncs.com";
        return new com.aliyun.ocr_api20210707.Client(config);
    }


    @SneakyThrows
    @RequestMapping("ocr")
    @ResponseBody
    public Object ocr(@RequestParam("file") MultipartFile file){
        com.aliyun.ocr_api20210707.Client client = OcrSampleController
                .createClient("accessKeyI", "accessKeySecret");
        // 需要安装额外的依赖库,直接点击下载完整工程即可看到所有依赖。
        java.io.InputStream bodySyream = file.getInputStream();
        com.aliyun.ocr_api20210707.models.RecognizeIdcardRequest recognizeIdcardRequest = new com.aliyun.ocr_api20210707.models.RecognizeIdcardRequest()
                .setBody(bodySyream);
        com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
        try {
            // 复制代码运行请自行打印 API 的返回值
            RecognizeIdcardResponse response = client.recognizeIdcardWithOptions(recognizeIdcardRequest, runtime);
            RecognizeIdcardResponseBody body = response.getBody();
            String data = body.getData();
            IdCardRoot idCardRoot = JSON.parseObject(data, IdCardRoot.class);
            return idCardRoot;
        } catch (TeaException error) {
            // 如有需要,请打印 error
            com.aliyun.teautil.Common.assertAsString(error.message);
        } catch (Exception _error) {
            TeaException error = new TeaException(_error.getMessage(), _error);
            // 如有需要,请打印 error
            com.aliyun.teautil.Common.assertAsString(error.message);
        }
        return null;
    }
}

11、使用postman调试
阿里云ocr身份证识别接口调用_第11张图片
12、源码下载地址

你可能感兴趣的:(java,阿里云,java)