移动端 芝麻信用评分接入实践详解

日前接触到接入芝麻信用评分进行信用评估的需求,在项目中用以通过芝麻信用评分高于一定值,进行类似免押金的信用操作;

实践过程中,看了一些人写的过程说明,都比较老,和实际接入的部分相去甚远;于是乎,仔细阅读了官方文档,现已成功接入,特整理出来,分享一下;

 

芝麻信用评分服务的接入大概需要几个流程:

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];
    }
}

 

以上就是接入过程中总结的全部内容,希望对大家有帮助。


题外话:

其实我的信用分挺高的✧(≖ ◡ ≖✿)嘿嘿


 

 

 

 

补充:2019-01-01

芝麻信用新版的接入流程已经变更,实际上是将使用芝麻信用分的可能场景进行了细化,并纳入了支付宝自己的流程中;

具体的业务在租赁中押金的支付表现上尤为明显;

详尽的流程不再记录了,因为主要的工作都是通过服务来完成的,返回预授权的签名,客户端按照支付宝支付的流程传入即可;

相关的支付宝商品租赁服务都有对应的后台配置支持,具体的查阅官方文档即可;

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值