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

初步:

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

将结果解析成一个实体类

相关推荐
郝学胜-神的一滴3 小时前
超越Spring的Summer(一): PackageScanner 类实现原理详解
java·服务器·开发语言·后端·spring·软件构建
摇滚侠3 小时前
Java,举例说明,函数式接口,函数式接口实现类,通过匿名内部类实现函数式接口,通过 Lambda 表达式实现函数式接口,演变的过程
java·开发语言·python
打工的小王3 小时前
java并发编程(七)ReentrantReadWriteLock
java·开发语言
lang201509283 小时前
Java并发革命:JSR-133深度解析
java·开发语言
abluckyboy3 小时前
基于 Java Socket 实现多人聊天室系统(附完整源码)
java·开发语言
Re.不晚3 小时前
JAVA进阶之路——数据结构之线性表(顺序表、链表)
java·数据结构·链表
毅炼3 小时前
Java 基础常见问题总结(3)
java·开发语言
亓才孓3 小时前
[JDBC]事务
java·开发语言·数据库
CHU7290353 小时前
直播商城APP前端功能全景解析:打造沉浸式互动购物新体验
java·前端·小程序
侠客行03179 小时前
Mybatis连接池实现及池化模式
java·mybatis·源码阅读