阿里雲--實人認證的接口


首先進入阿里雲登錄頁面輸入用戶名和密碼  http://signin.aliyun.com/1944533551367997/login.htm

下面要進行 身份認證 我們需要 姓名 + 身份證號 + 人臉圖片信息進行認證

登錄成功

 

在搜索處搜索 實人認證

 

 新建場景

 

 

選擇認證方案  https://help.aliyun.com/document_detail/61362.html

 

 下拉鼠標 選擇適合我們的驗證方式

 

選擇認證方案完成 新增場景

 方案示例

//創建DefaultAcsClient實例並初始化
DefaultProfile profile = DefaultProfile.getProfile(
        "cn-hangzhou",             //默認
        "YourAccessKeyID",         //您的Access Key ID
        "YourAccessKeySecret");    //您的Access Key Secret
IAcsClient client = new DefaultAcsClient(profile);
String biz = "YourRPMinBiz"; //您在控制台上創建的、采用RPMin認證方案的認證場景標識, 創建方法:https://help.aliyun.com/document_detail/59975.html
String ticketId = UUID.randomUUID().toString(); //認證ID, 由使用方指定, 發起不同的認證任務需要更換不同的認證ID
String token = null; //認證token, 表達一次認證會話
//1. 發起認證請求, 獲取到token
//GetVerifyToken接口文檔:https://help.aliyun.com/document_detail/57050.html
GetVerifyTokenRequest getVerifyTokenRequest = new GetVerifyTokenRequest();
getVerifyTokenRequest.setBiz(biz); //傳入采用RPMin認證方案的認證場景標識(biz)
getVerifyTokenRequest.setTicketId(ticketId);
try {
    GetVerifyTokenResponse response = client.getAcsResponse(getVerifyTokenRequest);
    token = response.getData().getVerifyToken().getToken(); //token默認30分鍾時效,每次發起認證時都必須實時獲取
} catch (Exception e) {
    e.printStackTrace();
}
//2. 用token提交認證材料
//SubmitMaterials接口文檔:https://help.aliyun.com/document_detail/58176.html
SubmitMaterialsRequest submitRequest = new SubmitMaterialsRequest();
submitRequest.setVerifyToken(token);
submitRequest.setMethod(MethodType.POST);
//創建要提交的認證材料列表, 請根據 認證方案 中的說明傳入相應字段
List<SubmitMaterialsRequest.Material> verifyMaterials = new ArrayList<SubmitMaterialsRequest.Material>();
SubmitMaterialsRequest.Material identificationNumber = new SubmitMaterialsRequest.Material();
identificationNumber.setMaterialType("IdentificationNumber");
identificationNumber.setValue("330110201711110101");
verifyMaterials.add(identificationNumber);
SubmitMaterialsRequest.Material name = new SubmitMaterialsRequest.Material();
name.setMaterialType("Name");
name.setValue("張三");
verifyMaterials.add(name);
//傳入圖片資料,請控制單張圖片大小在 2M 內,避免拉取超時
SubmitMaterialsRequest.Material facePic = new SubmitMaterialsRequest.Material();
facePic.setMaterialType("FacePic");
facePic.setValue("base64://iVBORw0KGgoA..."); //base64方式上傳圖片, 格式為"base64://圖片base64字符串", 以"base64://"開頭且圖片base64字符串去掉頭部描述(如"data:image/png;base64,"), 並注意控制接口請求的Body在8M以內
verifyMaterials.add(facePic);
SubmitMaterialsRequest.Material idCardFrontPic = new SubmitMaterialsRequest.Material();
idCardFrontPic.setMaterialType("IdCardFrontPic");
idCardFrontPic.setValue("http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg"); //http方式上傳圖片, 此http地址須可公網訪問
verifyMaterials.add(idCardFrontPic);
SubmitMaterialsRequest.Material idCardBackPic = new SubmitMaterialsRequest.Material();
idCardBackPic.setMaterialType("IdCardBackPic");
idCardBackPic.setValue("oss://verify-img:715559d76a40774OSS.JPG"); //oss方式上傳圖片, 此oss文件地址須可公開訪問
verifyMaterials.add(idCardBackPic);
submitRequest.setMaterials(verifyMaterials);
try {
    SubmitMaterialsResponse response = client.getAcsResponse(submitRequest);
    //由於審核需要時間,SubmitMaterials接口並不保證同步返回認證結果,可能會返回認證中狀態, 此時需要使用GetStatus接口輪詢認證結果。
    //GetStatus接口文檔:https://help.aliyun.com/document_detail/57049.html
    //GetStatusRequest getStatusRequest = new GetStatusRequest();
    //getStatusRequest.setBiz(biz);
    //getStatusRequest.setTicketId(ticketId);
    //GetStatusResponse response = client.getAcsResponse(getStatusRequest);
    //int statusCode = response.getData().getStatusCode();
    //后續業務處理
} catch (Exception e) {
    e.printStackTrace();
}
//常見問題:https://help.aliyun.com/document_detail/57640.html

 

 本人在認證的過程中沒有傳入正確的圖片  所以認證不能通過

int statusCode = -1; //-1 未認證, 0 認證中, 1 認證通過, 2 認證不通過

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM