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

初步:

  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在线解析

将结果解析成一个实体类

相关推荐
Leinwin3 小时前
OpenClaw 多 Agent 协作框架的并发限制与企业化规避方案痛点直击
java·运维·数据库
薛定谔的悦3 小时前
MQTT通信协议业务层实现的完整开发流程
java·后端·mqtt·struts
enjoy嚣士3 小时前
springboot之Exel工具类
java·spring boot·后端·easyexcel·excel工具类
罗超驿3 小时前
独立实现双向链表_LinkedList
java·数据结构·链表·linkedlist
盐水冰4 小时前
【烘焙坊项目】后端搭建(12) - 订单状态定时处理,来单提醒和顾客催单
java·后端·学习
凸头4 小时前
CompletableFuture 与 Future 对比与实战示例
java·开发语言
wuqingshun3141595 小时前
线程安全需要保证几个基本特征
java·开发语言·jvm
努力也学不会java5 小时前
【缓存算法】一篇文章带你彻底搞懂面试高频题LRU/LFU
java·数据结构·人工智能·算法·缓存·面试
攒了一袋星辰5 小时前
高并发强一致性顺序号生成系统 -- SequenceGenerator
java·数据库·mysql
小涛不学习5 小时前
Spring Boot 详解(从入门到原理)
java·spring boot·后端