怎么在Java項目中調用用戶的芝麻信用分

怎么在Java項目中調用用戶的芝麻信用分?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

成都創新互聯 - 德陽服務器托管,四川服務器租用,成都服務器租用,四川網通托管,綿陽服務器托管,德陽服務器托管,遂寧服務器托管,綿陽服務器托管,四川云主機,成都云主機,西南云主機,德陽服務器托管,西南服務器托管,四川/成都大帶寬,成都機柜租用,四川老牌IDC服務商

1.導入芝麻信用API:zmxy-sdk-java-20180824112425.jar 和 fastjson-1.2.48.jar

2.代碼如下:

package com.zhima;

import java.net.URLDecoder;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.antgroup.zmxy.openplatform.api.DefaultZhimaClient;
import com.antgroup.zmxy.openplatform.api.ZhimaApiException;
import com.antgroup.zmxy.openplatform.api.internal.util.RSACoderUtil;
import com.antgroup.zmxy.openplatform.api.request.ZhimaAuthInfoAuthorizeRequest;
import com.antgroup.zmxy.openplatform.api.request.ZhimaAuthInfoAuthqueryRequest;
import com.antgroup.zmxy.openplatform.api.request.ZhimaCreditScoreGetRequest;
import com.antgroup.zmxy.openplatform.api.response.ZhimaAuthInfoAuthqueryResponse;
import com.antgroup.zmxy.openplatform.api.response.ZhimaCreditScoreGetResponse;

public class Demo {

 //芝麻開放平臺地址

 private static final String URL  = "https://zmopenapi.zmxy.com.cn/openapi.do";

 //商戶應用 Id

 private static final String APPID = "";

 //商戶 RSA 私鑰

 private static final String PRIKEY = "";

 //芝麻 RSA 公鑰

 private static final String PUBKEY = "";

 //統一字符集

 private static final String CHARSET = "UTF-8";

 /**
 
  * 查詢授權信息
 
  */

 public void testZhimaAuthInfoAuthorize() {

  ZhimaAuthInfoAuthorizeRequest req = new ZhimaAuthInfoAuthorizeRequest();

  req.setIdentityType("2");// 身份標識

  req.setChannel("apppc"); // PC端

  // 必要參數 state: 用于給商戶提供透傳的參數,芝麻會將此參數透傳給商戶

  req.setBizParams("{\"auth_code\":\"M_APPPC_CERT\",\"state\":\"100111211\"}");

  req.setIdentityParam(
   "{\"certNo\":\"330621198710114617\",\"certType\":\"IDENTITY_CARD\",\"name\":\"陳金賽\"}");// 必要參數  

  DefaultZhimaClient client = new DefaultZhimaClient(URL, APPID, CHARSET, PRIKEY, PUBKEY);

  try {

   String url = client.generatePageRedirectInvokeUrl(req);

   System.out.println(url);

  } catch (ZhimaApiException e) {

   e.printStackTrace();

  }

 }

 /**
 
  * 獲取目標用戶的open_id,沒有openid,走授權
 
  */

 public void testZhimaAuthInfoReq() {

  ZhimaAuthInfoAuthqueryRequest req = new ZhimaAuthInfoAuthqueryRequest();

  // 0:芝麻信用開放賬號ID 1:按照手機號進行授權 2:按照身份證+姓名進行授權 3通過公安網驗證進行授權 4.通過人臉驗證進行授權

  req.setIdentityType("2");

  req.setIdentityParam(
   "{\"certNo\":\"522121198710114617\",\"certType\":\"IDENTITY_CARD\",\"name\":\"但鏡宇\"}");// 必要參數  

  DefaultZhimaClient client = new DefaultZhimaClient(URL, APPID, CHARSET, PRIKEY, PUBKEY);

  try {

   // 如果正常返回,直接在對象里面獲取結果值

   ZhimaAuthInfoAuthqueryResponse response = client.execute(req);

   System.out.println(JSON.toJSON(response));

   /* 成功響應報文
   {
    
     "authorized": true,
    
     "body": "{\"success\":true,\"authorized\":true,\"open_id\":\"268816231939676969685782895\"}",
    
     "openId": "268816231939676969685782895",
    
     "params": {
    
     "params": "faeSa69w3kOL+ZRAuHykvufu6ogiqxA48l5hzPutKItPy/2HKtdznbzvLhutsY6KTqLgwS/Af1GN1Y7MLh+XDFtjVUf5kF/npUspRkyFUCPpASJAMxeK56vaELnZ4yCVFjVseOBYlCn4YOCZWmBpu02l7IctE6ZP3r1o4HUR+sMQYlYu2xFHfXiqX2g0vdQn81pJ/fcQ4OuBzq1d3c+qniBXf3iESni1m21nMjxeUclzCdZwXWCI1aIYQnDFgVo/58kJ9CTw/6FrffUcP+c6zvzdM8RNCefiGGuF5Vef+C6tck1kBaYoYT6BS5u4ahYteoiG+XJgzLKF+BqAplhq/A=="
    
     },
    
     "success": true
    
   }
    
   // 失敗響應報文
    
   {
    
     "authorized": false,
    
     "body": "{\"success\":true,\"authorized\":false}",
    
     "params": {
    
     "params": "lGYId9CaU8McGDd8U0ZMM8Pky1/ulOE44LkgGcrWrdzmEtU1JBT5M+Jjd5e27bz45d/CNEqbwmwtg3VsozZTol42YKNi+MYzvvyZEOsUT9F68qiIPxxlOv3vGJsUpB+LJMOI8ZU7eXtHoCnbarQSOvtSylilp6dpIbAIYxbPPvSkj+7f1TiSne/7Re/XZ1qVVM18yTJyleCr+WlOe7o59lZAoiZ5bDoP2ta8MIjwlxz4/1d+IYe0f2BoZQa/9oDqJZ0MNQ0iPCbhqBKRuShPCQe8afEyOTTI0p+cROjwWTz0dwP7QXnkWBvzX3hrWXImdk7JszOVoSxAAAfwcVXNxw=="
    
     },
    
     "success": true
    
   } */

  } catch (ZhimaApiException e) {

   e.printStackTrace();

  }

 }

 /**
 
  * 測試查詢芝麻分
 
  * @throws ZhimaApiException 
 
  */

 public static void testQueryScore() throws ZhimaApiException {

  ZhimaCreditScoreGetRequest creditScoreGetRequest = new ZhimaCreditScoreGetRequest();

  creditScoreGetRequest.setPlatform("zmop"); // 開放平臺,zmop代表芝麻開放平臺

  creditScoreGetRequest.setChannel("apppc"); // pc端

  //transactionId,該標記是商戶每次請求的唯一標識。建議使用uuid進行傳遞,

  creditScoreGetRequest.setTransactionId(UUID.randomUUID().toString());

  creditScoreGetRequest.setProductCode("w1010100100000000001"); // 商戶配置那塊兒的產品Code

  creditScoreGetRequest.setOpenId("268816113399909561399995894"); // appid,每個人的標識

  DefaultZhimaClient client = new DefaultZhimaClient(URL, APPID, CHARSET, PRIKEY, PUBKEY);

  // 如果正常返回,直接在對象里面獲取結果值

  ZhimaCreditScoreGetResponse creditScoreGetResponse = client.execute(creditScoreGetRequest);

  System.out.println(JSON.toJSON(creditScoreGetResponse));

  /* 成功查詢響應報文
   
  {
   
    "bizNo": "ZM20160120014501763890a37b16614532255017521309",
    
    "body": "{\"success\":true,\"biz_no\":\"ZM20160120014501763890a37b16614532255017521309\",\"zm_score\":751}",
    
    "params": {
    
    "params": "aqiMCUg1VbZRqflPyVyLKgxShcvc3WoWLTFewqA9PvQjp6yuC99lYlGdr/Bf2FevQ2zemdPTixqQWnO7qdz0pT2x4VFWVJdldPgLVsRr37qWDcO5NjvNZzOuEYozzGSnzwhTyelqglAdzOOepM0ows+7sNVJriABtRdt1HH8gqc="
    
    },
    
    "success": true,
    
    "zmScore": "751"
   
   }
   
   // 失敗查詢響應報文
   
   {
   
    "body": "{\"success\":false,\"error_code\":\"ZMCREDIT.api_product_not_match\",\"error_message\":\"輸入的產品碼不正確\"}",
    
    "errorCode": "ZMCREDIT.api_product_not_match",
    
    "errorMessage": "輸入的產品碼不正確",
    
    "params": {
    
     "params": "vJTcbtVvo0/WEG01Flve0//EbE70clk7v84B7MVJZH59/HefdyAZ1JG4opTna5ANWvY8UArsGlVIAQ+9K0169ARyJ2yoGs+0Z/fHmrXmWNNqOpcuV56A1xX6E+VOpUth8Z8RqPFKnEq4/rFJRKPA9Uhue2KM9yj6hsAbF0ZXU74="
    
    },
    
    "success": false
   
   } */

 }

 /**
 
  * 自動生成頁面授權的url
 
  * @throws Exception
 
  */

 public static void testPageAuth() throws Exception {

  ZhimaAuthInfoAuthorizeRequest authInfoAuthorizeRequest = new ZhimaAuthInfoAuthorizeRequest();

  authInfoAuthorizeRequest.setChannel("apppc"); // PC端

  authInfoAuthorizeRequest.setPlatform("zmop"); // 開放平臺

  // 0:芝麻信用開放賬號ID 1:按照手機號進行授權 2:按照身份證+姓名進行授權 3通過公安網驗證進行授權 4.通過人臉驗證進行授權

  authInfoAuthorizeRequest.setIdentityType("2");

  Map<String, String> identityParams = new HashMap<String, String>();

  identityParams.put("certNo", "61042619850403354X"); // 證件號碼

  identityParams.put("name", "張三"); // 姓名

  identityParams.put("certType", "IDENTITY_CARD"); // 證件類型

  authInfoAuthorizeRequest.setIdentityParam(JSONObject.toJSONString(identityParams));

  DefaultZhimaClient client = new DefaultZhimaClient(URL, APPID, CHARSET, PRIKEY, PUBKEY);

  String pageAuthUrl = client.generatePageRedirectInvokeUrl(authInfoAuthorizeRequest);

  System.out.println(pageAuthUrl);

 }

 /**
 
  * 獲取芝麻分(GET方式)
 
  */

 public void testZhimaCreditWatchlistGet() {

  ZhimaCreditScoreGetRequest req = new ZhimaCreditScoreGetRequest();

  req.setProductCode("w1010100100000000001");// 必要參數  

  req.setOpenId("268816231939676969685782895");// 必要參數  

  DefaultZhimaClient client = new DefaultZhimaClient(URL, APPID, CHARSET, PRIKEY, PUBKEY);

  try {

   // 如果正常返回,直接在對象里面獲取結果值

   ZhimaCreditScoreGetResponse response = client.execute(req);

   System.out.println(JSON.toJSON(response));

  } catch (ZhimaApiException e) {

   e.printStackTrace();

  }

 }

 /**
 
  * 處理回調后的參數,然后解密params
 
  * @param url 例如:http://xxxx.comparams%3Dxxxxx% ... xxxxx
 
  * @throws Exception
 
  */

 public static void parseFromReturnUrl(String url) throws Exception {

  int index = url.indexOf("");

  String urlParamString = url.substring(index + 1);

  String[] paraPairs = urlParamString.split("&");

  String encryptedParam = "";

  for (String paramPair : paraPairs) {

   String[] splits = paramPair.split("=");

   if ("params".equals(splits[0])) {

    encryptedParam = splits[1];

   }

  }

  String decryptedParam = RSACoderUtil.decrypt(URLDecoder.decode(encryptedParam, CHARSET),

   PRIKEY, CHARSET);

  //通過瀏覽器返回時,不需要decode

  System.out.println(URLDecoder.decode(decryptedParam, CHARSET));

  /* params主要JSON參數如下:
   
     名稱           類型     示例值      備注
   
  success    String success  請求成功還是失敗的標識
   
  error_code   String 000001  失敗時的錯誤碼
   
  error_message  String 缺少appId  失敗時的錯誤信息
   
  open_id    String 26881...  芝麻業務id
   
  state    String 239...  商戶透傳的值,芝麻不做解析
   
  */

 }

}

看完上述內容,你們掌握怎么在Java項目中調用用戶的芝麻信用分的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!

網頁題目:怎么在Java項目中調用用戶的芝麻信用分
文章分享:http://m.kartarina.com/article12/pgcidc.html

成都網站建設公司_創新互聯,為您提供響應式網站用戶體驗云服務器全網營銷推廣軟件開發建站公司

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都網頁設計公司
主站蜘蛛池模板: 亚洲欧洲美洲无码精品VA| 无码人妻少妇久久中文字幕| 日韩精品无码一区二区三区四区 | 无码人妻啪啪一区二区| 国产精品亚洲а∨无码播放麻豆| 亚洲综合无码精品一区二区三区 | 欲色aV无码一区二区人妻| 成人免费无遮挡无码黄漫视频| 中文字幕有码无码AV| 爆乳无码AV一区二区三区| 无码h黄动漫在线播放网站| 亚洲不卡无码av中文字幕| 亚洲中文无码卡通动漫野外| 亚洲爆乳无码一区二区三区| 国产在线无码视频一区| 亚洲av日韩aⅴ无码色老头| 久久久久亚洲AV无码麻豆| 亚洲中久无码永久在线观看同| 免费无遮挡无码视频在线观看| 精品无码成人片一区二区98 | yy111111少妇无码影院| 亚洲精品无码专区在线播放| 无码137片内射在线影院| 寂寞少妇做spa按摩无码| 波多野结AV衣东京热无码专区| 精品无码久久久久久国产| 亚洲AV无码国产剧情| 亚洲成a∧人片在线观看无码| 无码精品A∨在线观看中文| 熟妇人妻无码中文字幕| 亚洲AV无码不卡在线播放| 亚洲爆乳无码一区二区三区| 久久精品九九热无码免贵| 无码孕妇孕交在线观看| 日韩精品专区AV无码| 91精品无码久久久久久五月天| 亚洲av无码片区一区二区三区| 精品少妇人妻av无码久久| 久久亚洲精品成人无码网站 | 无码中文字幕一区二区三区| 亚洲日韩中文字幕无码一区|