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

初步:

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

将结果解析成一个实体类

相关推荐
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ1 分钟前
MyBatis执行完sql后,返回的数值代表的意思
java·开发语言
CodeClimb33 分钟前
【华为OD-E卷-寻找密码 100分(python、java、c++、js、c)】
java·python·华为od
爱上语文36 分钟前
宠物管理系统:Service层
java·开发语言·宠物
水w1 小时前
【项目实践】SpringBoot Nacos配置管理 map数据
java·服务器·开发语言·spring boot·nacos
@菜鸟进阶记@1 小时前
SpringBoot核心:自动配置
java·spring boot·后端
瓜牛_gn1 小时前
苍穹外卖项目Day02代码结构深度解析
java·spring
汤姆yu1 小时前
基于springboot的健身俱乐部网站系统
java·spring boot·后端·健身房·俱乐部
喵手1 小时前
Java 实现日志文件大小限制及管理——以 Python Logging 为启示
java·开发语言·python
huapiaoy1 小时前
JavaSE---String(含一些源码)
java·linux·前端
LIZHUOLONG11 小时前
用C语言实现线程池
java·c语言·算法