1.入駐商戶;
2.芝麻信用評分產品的申請;
3.新建應用;
4.服務端接入;
5.客戶端接入;
我們來壹個壹個看下;
1.入駐商戶;
這個需要通過芝麻信用商戶平臺註冊商戶,完成商戶入駐;
沒什麽太特別的,公司信息該填什麽填什麽,1-2天即可審核通過;
2.芝麻信用評分產品的申請;
具體的芝麻信用服務有很多,依照具體需求進行選擇申請即可;
申請的過程中需要註意壹下幾點:
1)芝麻信用評分的查詢操作是計費的,每次0.4元(不知道以後會不會變);
2)在選擇完業務場景說明之後,還要填寫業務承載渠道;
我們選擇的是App的方式,這裏需要註意下:
(1)芝麻信用推薦用戶App上線之後,再接入芝麻信用評分的簽約;
(2)未上線的應用,需要提交AppDemo說明:
a.發送郵件至zmxyservice@zmxy.com.cn?附件內容:Demo+文字介紹及芝麻信用的功能說明+主要截圖3-5;
郵件title :公司名+Appdemo;
b.在業務承載渠道App名稱壹欄app名稱後備註信息:App名(郵件已發送);
這壹步的審核時間很短,1天就能過;
可以在商戶中心-應用管理-已簽約產品查看;
3.新建應用;
商戶中心-應用管理-我的應用,新建應用即可;
這裏需要生成壹套秘鑰,以及設置服務端回調地址;正常配置即可,拿到相應參數;
4.服務端接入;
這裏需要服務端開發人員的支持了,幾個比較重要的過程有:
1)通過用戶信息進行授權請求,得到動態生成的授權協議鏈接;
2)同意授權之後,芝麻信用會跳轉到回調地址,附帶參數open_id,保存該參數與用戶關系;
3)使用open_id參數,調用芝麻分查詢請求,獲得芝麻分字段zm_score(350-950,沒有返回字符串N/A);
這個過程可以這樣理解:
調用芝麻信用評分需要授權,授權需要服務端生成授權URL, 移動端用webview訪問授權URL進行驗證碼授權,結果回調到服務端頁面,解密驗簽拿到授權碼openid, 服務端調用芝麻信用評分接口拿到芝麻分
最後我們來看看客戶端需要做些什麽;
5.客戶端接入;
具體流程說明:
1)對應壹個接入服務的入口界面;
2)點擊觸發按鈕調用獲取授權狀態的接口;
註:該接口服務端提供,返回授權狀態;
3)有授權狀態則跳轉界面,顯示評分對應結果;
4)無授權狀態,則跳轉進入身份證和姓名輸入界面;
5)調用接口驗證身份證和姓名對應的支付寶賬戶,得到url跳轉界面進行webview顯示;
註:該接口服務端提供,返回授權url鏈接;
跳轉webview顯示該url對應界面,該界面可進行授權操作,短信驗證碼獲取等操作;成功及失敗狀態均有內部跳轉鏈接,截獲處理即可;
相關流程如下圖示意:
6)若驗證成功,會進行授權過程短信驗證等,再成功,則對應授權成功的情況,url重定向為ezj://zhimaauthfinish(服務端自定義);
已授權成功則調用獲取評分信息接口(與獲取授權狀態接口同),跳轉顯示評分對應結果界面;
7)若驗證失敗,則對應授權失敗和授權異常的情況,url重定向為ezj://zhimaauthfailed(服務端自定義),返回上壹頁重新輸入姓名和身份證號;
註:
關於url重定向,只有授權成功才返回ezj://zhimaauthfinish,授權失敗和授權異常都返回ezj://zhimaauthfailed;
實際的界面跳轉ios采用了不同的界面切換方式,可參考具體實現;
這裏url加載使用的是WKWebView,處理需要在代理方法中進行如下判斷
// 接收到服務器跳轉請求之後調用
- (void)webView:(WKWebView *)webView didReceiveServerRedirectForProvisionalNavigation:(WKNavigation *)navigation{
if ([webView.URL.absoluteString isEqual:@"ezj://zhimaauthfinish"]) {
[self asyncConnectGetZhimaInfo];
}else if ([webView.URL.absoluteString isEqual:@"ezj://zhimaauthfailed"]){
[self leftBarBtnAction:nil];
}
}
以上就是接入過程中總結的全部內容。