银行卡四要素验证

本次调试采用阿里提供的技术

准备工作:

首先到阿里云网站:https://market.aliyun.com/products/57000002/cmapi021096.html?spm=5176.730005-56928004.0.0.C4KO89#sku=yuncode1509600002

购买成功后,到控制台得到你的appcode

代码实现:

service:

/**
 * 校验银行四要素
 *
 * @param cardNo  银行卡号
 * @param idNo    身份证号
 * @param name    姓名
 * @param phoneNo 预留手机号
 */
String checkBankCard(String cardNo, String idNo, String name, String phoneNo);

impl:

/**
 * 校验银行四要素
 * @param cardNo 银行卡号
 * @param idNo     身份证号
 * @param name  姓名
 * @param phoneNo 预留手机号
 */
@Override
public String checkBankCard( String cardNo, String idNo, String  name, String  phoneNo) {
    String host = "https://yunyidata.market.alicloudapi.com";
    String path = "/bankAuthenticate4";
    String method = "POST";
    String appcode = "你的appcode";
    Map<String, String> headers = new HashMap<String, String>();
    headers.put("Authorization", "APPCODE " + appcode);
    headers.put("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
    Map<String, String> querys = new HashMap<String, String>();
    Map<String, String> bodys = new HashMap<String, String>();
    bodys.put("cardNo", cardNo);
    bodys.put("idNo", idNo);
    bodys.put("name", name);
    bodys.put("phoneNo", phoneNo);
    try {
        HttpResponse response = HttpUtils.doPost(host, path, method, headers, querys, bodys);
        return EntityUtils.toString(response.getEntity());
    } catch (Exception e) {
        e.printStackTrace();
    }
    return "失败";
}

以上是封装好的业务层,可以在controller直接进行调用。

postman测试结果如下:

{

 "name":"王威",

 "cardNo":"1234567897356001",

 "idNo":"123456789211070012",

 "phoneNo":"12345678914",

 "respMessage":"信息匹配",

 "respCode":"0000"

}

猜你喜欢

转载自blog.csdn.net/weixin_41146000/article/details/105654516