使用阿里云身份证扫描识别接口案例—

简介: 使用阿里云身份证扫描识别接口案例—
/**
   * 
  * @Title: idcard
  * @Description: 该方法的主要作用:扫描身份证
  * @param  @return 设定文件  
  * @return  返回类型:String   
  * @throws
   */
  public void idcard(){
    String host = "https://dm-51.data.aliyun.com";
      String path = "/rest/160601/ocr/ocr_idcard.json";
      String method = "POST";
      Map<String, String> headers = new HashMap<String, String>();
      headers.put("Authorization", "APPCODE " + appcode);
      headers.put("Content-Type", "application/json; charset=UTF-8");
      Map<String, String> querys = new HashMap<String, String>();
      String bodys = "{\"inputs\": [{\"image\": {\"dataType\": 50,\"dataValue\":\""+img+"\"},\"configure\": {\"dataType\": 50,\"dataValue\":\"{\\\"side\\\":\\\"face\\\"}\"}}]}";
      try {
        
        HttpResponse response = HttpUtils.doPost(host, path, method, headers, querys, bodys);
        //System.out.println(EntityUtils.toString(response.getEntity()));
        String result = EntityUtils.toString(response.getEntity());
        System.out.println(result);
         JSONObject jObject =  JSONObject.fromObject(result);
         JSONArray jarray = jObject.optJSONArray("outputs");
         for (int i = 0; i < jarray.size(); i++) {
        JSONObject subject =  jarray.getJSONObject(i);
        String outputValue = subject.get("outputValue").toString();
        /*outputValue={
              "dataType": 50,
              "dataValue": {
                "address": "山西省xxxx041",
                "birth": "19980908",
                "config_str": "{\"side\":\"face\"}",
                "face_rect": {
                  "angle": -90,
                  "center": {
                    "x": 446,
                    "y": 210
                  },
                  "size": {
                    "height": 92,
                    "width": 84
                  }
                },
                "name": "xxx",
                "nationality": "汉",
                "num": "1411251998xxxxxxX",
                "request_id": "20170806200141_c5338b2c4fd601ea7f00c4dcc5c8ee0e",
                "sex": "男",
                "success": true
              }
            }*/
        JSONObject j_outputValue = JSONObject.fromObject(outputValue);
        String dataValue = j_outputValue.getString("dataValue");
        JSONObject j_dataValue = JSONObject.fromObject(dataValue);
        customerInfo = new CustomerInfo();
        customerInfo.setName(j_dataValue.getString("name").toString());  //姓名
        String date = j_dataValue.getString("birth").toString();
        customerInfo.setBorn(date);
        SimpleDateFormat format = new SimpleDateFormat(date);
        Date birth = format.parse(date);
        customerInfo.setBirth(birth);//生日
        
        customerInfo.setAddress(j_dataValue.getString("address").toString());
        customerInfo.setNationality(j_dataValue.getString("nationality").toString());
        customerInfo.setNum(j_dataValue.getString("num").toString());
        customerInfo.setSex(j_dataValue.getString("sex").toString());
        
      }
        System.out.println(customerInfo.getName());
        String jsonc = JSON.toJSONString(customerInfo);
        
      HttpServletResponse response1 = ServletActionContext.getResponse();
      response1.setContentType("text/html;charset=utf-8");
      PrintWriter out = response1.getWriter();
      out.print(jsonc);
      
      } catch (Exception e) {
        e.printStackTrace();
      }
    
  }


相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
阿里云实时数仓实战 - 项目介绍及架构设计
课程简介 1)学习搭建一个数据仓库的过程,理解数据在整个数仓架构的从采集、存储、计算、输出、展示的整个业务流程。 2)整个数仓体系完全搭建在阿里云架构上,理解并学会运用各个服务组件,了解各个组件之间如何配合联动。 3&nbsp;)前置知识要求 &nbsp; 课程大纲 第一章&nbsp;了解数据仓库概念 初步了解数据仓库是干什么的 第二章&nbsp;按照企业开发的标准去搭建一个数据仓库 数据仓库的需求是什么 架构 怎么选型怎么购买服务器 第三章&nbsp;数据生成模块 用户形成数据的一个准备 按照企业的标准,准备了十一张用户行为表 方便使用 第四章&nbsp;采集模块的搭建 购买阿里云服务器 安装 JDK 安装 Flume 第五章&nbsp;用户行为数据仓库 严格按照企业的标准开发 第六章&nbsp;搭建业务数仓理论基础和对表的分类同步 第七章&nbsp;业务数仓的搭建&nbsp; 业务行为数仓效果图&nbsp;&nbsp;
目录
相关文章
|
5天前
|
存储 开发工具 对象存储
Javaweb之SpringBootWeb案例之阿里云OSS服务入门的详细解析
Javaweb之SpringBootWeb案例之阿里云OSS服务入门的详细解析
11 0
|
1月前
|
存储 DataWorks Kubernetes
阿里云cam授权案例
以下是内容摘要: 1. 阿里云OSS自定义策略允许全权访问`dc-odsopr`及其所有内容。 2. Dataworks授权文档详情见[此处](https://help.aliyun.com/document_detail/74302.html)。 3. 日志权限策略涵盖多种日志操作,如获取和管理项目、作业、日志存储等,限定于`cn-shenzhen`区域的`k8s`项目。 4. AliKafka权限包括实例、主题的管理,消息操作及部署、ACL、用户管理等。 5. OSS策略允许上传对象至`sz-creative-system-test-public`存储空间。
28 5
|
1月前
使用阿里云智能翻译接口案例—
使用阿里云智能翻译接口案例—
11 0
|
1月前
|
JSON 数据格式
使用阿里云火车票查询接口案例—
使用阿里云火车票查询接口案例—
11 0
|
1月前
|
算法 Java 开发工具
使用阿里云KMS产品针对 Springboot 接口参数加密解密功能
针对Springboot里面使用开源工具使用加解密,替换成阿里云KMS产品进行加解密;
147 1
|
2月前
|
文字识别 安全 API
阿里云文字识别OCR的发票凭证识别功能可以通过API接口的形式进行调用
【2月更文挑战第5天】阿里云文字识别OCR的发票凭证识别功能可以通过API接口的形式进行调用
90 5
|
2月前
|
弹性计算 网络安全
阿里云OpenAPI提供了多种接口来管理ECS实例
【2月更文挑战第1天】阿里云OpenAPI提供了多种接口来管理ECS实例
32 0
|
1月前
|
Ubuntu JavaScript 关系型数据库
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
在阿里云Ubuntu 20.04服务器上部署Ghost博客的步骤包括创建新用户、安装Nginx、MySQL和Node.js 18.x。首先,通过`adduser`命令创建非root用户,然后安装Nginx和MySQL。接着,设置Node.js环境,下载Nodesource GPG密钥并安装Node.js 18.x。之后,使用`npm`安装Ghost-CLI,创建Ghost安装目录并进行安装。配置过程中需提供博客URL、数据库连接信息等。最后,测试访问前台首页和后台管理页面。确保DNS设置正确,并根据提示完成Ghost博客的配置。
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
|
1月前
|
存储 分布式计算 网络协议
阿里云服务器内存型r7、r8a、r8y实例区别参考
在阿里云目前的活动中,属于内存型实例规格的云服务器有内存型r7、内存型r8a、内存型r8y这几个实例规格,相比于活动内的经济型e、通用算力型u1实例来说,这些实例规格等性能更强,与计算型和通用型相比,它的内存更大,因此这些内存型实例规格主要适用于数据库、中间件和数据分析与挖掘,Hadoop、Spark集群等场景,本文为大家介绍内存型r7、r8a、r8y实例区别及最新活动价格,以供参考。
阿里云服务器内存型r7、r8a、r8y实例区别参考
|
1月前
|
SQL 弹性计算 安全
购买阿里云活动内云服务器之后设置密码、安全组、增加带宽、挂载云盘教程
当我们通过阿里云的活动购买完云服务器之后,并不是立马就能使用了,还需要我们设置云服务器密码,配置安全组等基本操作之后才能使用,有的用户还需要购买并挂载数据盘到云服务器上,很多新手用户由于是初次使用阿里云服务器,因此并不知道这些设置的操作流程,下面给大家介绍下这些设置的具体操作流程。
购买阿里云活动内云服务器之后设置密码、安全组、增加带宽、挂载云盘教程

热门文章

最新文章