1、阿里云界面点击搜索ocr,选择文字识别,开通服务,默认已登录阿里云账号
2、选择个人证件识别,身份证识别(每个月赠送200次体验)
3、点击产品文档
4、下拉到最后,选择RecognizeIdcard点击,进入身份证识别界面
5、点击进入调试页面
6、上传身份证照片,点击发起调用,调用结果显示成功!网上测试完成,下面复制到本地工程!
7、引入依赖导本地工程
8、粘贴代码到本地
9、查询accessKeyId和accessKeySecret码
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调试
12、源码下载地址