阿里云身份证二要素详细使用

初步:

  1. 先登录阿里云(找官网链接)

2、云市场搜索身份证二要素

看个人需求选择

3、我选择的是下边这个

4、接下来看文档具体调用(在请求示例中有选择语言的代码 我选择的就是java)

5、在控制台看appcode码 放入代码中

6、接下来就可以运行代码看结果

示例 我做了个小案例

  1. 创建一个项目
  2. 写一个简单的接口
  3. Postman测试该接口 得到结果

Controller层

java 复制代码
@RestController
@RequestMapping("/user")
public class UserController {

  @Autowired
    UserServiceImpl userService;

    @RequestMapping("/hello")
    public String hello(@RequestBody Map<String,String> map) throws IOException {
        return userService.findAddress(map);
    }
}

Service层

java 复制代码
//import org.springframework.transaction.annotation.Transactional;
@Service
public class UserServiceImpl implements UserService {
    public String findAddress(Map<String, String> map) throws IOException {
        //获取用户的姓名和身份证号进行校验
        String name = map.get("name");
        String idCardNo = map.get("idCardNo");
        String address = AliIdCardReturnAddress.getAddress(idCardNo, name);
        System.out.println(address);
        return address;

    }

AliIdCardReturnAddress类是我自己封装的(根据阿里云提供的代码进行封装的)

AliIdCardReturnAddress类中的getAddress方法

java 复制代码
public static String getAddress(String idCardNo,String name) throws IOException {
    String host = "https://jmidcardv1.market.alicloudapi.com";
    String path = "/idcard/validate";
    String method = "POST";
    String appcode = "自己的appcode";
    Map<String, String> headers = new HashMap<String, String>();
    headers.put("Authorization", "APPCODE " + appcode);
    Map<String, String> querys = new HashMap<String, String>();
    Map<String, String> bodys = new HashMap<String, String>();
    bodys.put("idCardNo", idCardNo);
    bodys.put("name", name);
    HttpResponse response =null;
    try {
        response = HttpUtils.doPost(host, path, method, headers, querys, bodys);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return EntityUtils.toString(response.getEntity());
}

HttpUtil从网站上下载(阿里官方提示的)

/**

* 重要提示如下:

* HttpUtils请从

* https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/src/main/java/com/aliyun/api/gateway/demo/util/HttpUtils.java

* 下载

*

* 相应的依赖请参照

* https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/pom.xml

*/

最后运行调用该接口就能得到返回结果

可以有一个实体类来接收返回结果 这样就可以选择获取哪个数据,可以使用json在线解析

将结果解析成一个实体类

相关推荐
hqxstudying1 小时前
Java异常处理
java·开发语言·安全·异常
我命由我123454 小时前
Kotlin 数据容器 - List(List 概述、创建 List、List 核心特性、List 元素访问、List 遍历)
java·开发语言·jvm·windows·java-ee·kotlin·list
武子康6 小时前
Java-80 深入浅出 RPC Dubbo 动态服务降级:从雪崩防护到配置中心秒级生效
java·分布式·后端·spring·微服务·rpc·dubbo
YuTaoShao8 小时前
【LeetCode 热题 100】131. 分割回文串——回溯
java·算法·leetcode·深度优先
源码_V_saaskw9 小时前
JAVA图文短视频交友+自营商城系统源码支持小程序+Android+IOS+H5
java·微信小程序·小程序·uni-app·音视频·交友
超浪的晨9 小时前
Java UDP 通信详解:从基础到实战,彻底掌握无连接网络编程
java·开发语言·后端·学习·个人开发
双力臂40410 小时前
Spring Boot 单元测试进阶:JUnit5 + Mock测试与切片测试实战及覆盖率报告生成
java·spring boot·后端·单元测试
Edingbrugh.南空10 小时前
Aerospike与Redis深度对比:从架构到性能的全方位解析
java·开发语言·spring
QQ_43766431410 小时前
C++11 右值引用 Lambda 表达式
java·开发语言·c++
永卿00110 小时前
设计模式-迭代器模式
java·设计模式·迭代器模式