芝麻信用 NodeJS SDK (非官方)
接入流程
芝麻信用商家服务平台并签约
1. 注册2. 在芝麻信用商家服务平台创建商家应用并交换公钥
与芝麻信用交换公钥的步骤:
- 进入openssl
- 运行
genrsa -out app_private_key.pem 1024
生成一个私钥 - 运行
rsa -in app_private_key.pem -pubout -out app_public_key.pem
生成公钥 - 进入芝麻信用后台,将生成的公钥 去除 首行 / 尾行 / 换行符 粘贴进应用的公钥一栏
- 应用创建后,点击应用的芝麻公钥一栏,得到芝麻信用的公钥(原始格式)
- 将其整理为RSA公钥形式, 即加入首行,尾行,以及每64字符就换行, 并保存为 zmxy_public_key.pem
至此我们一共有三个秘钥文件,分别是:
- app_private_key.pem 应用私钥
- zmxy_public_key.pem 芝麻信用公钥
- app_public_key.pem 应用公钥(仅用于调试)
3. 使用SDK
在任意Node项目中可以通过npm安装
npm install zmxy --save
在保存秘钥的文件夹下创建app.js
文件
const fs = ;const ZmxyClient = default;const zmxy =appId: '123456' //芝麻应用App IDappPrivateKey: fs //App私钥zmxyPublicKey: fs //芝麻公钥;zmxy;
请求成功后可以看到控制台打印芝麻信用的返回
success: truebiz_no: 'ZM2016102030000000XXXXXXXXX'ivs_detail:code: 'PHONE_Match_Recency_Bad'description: '电话号码与其他信息匹配,但匹配后的信息近期不活跃'code: 'NAME_Match_Reliability_Bad'description: '姓名与其他信息匹配,但匹配后的信息未经认证'ivs_score: 72
SDK功能
获得欺诈评分
zmxy;
反欺诈信息验证
zmxy;
欺诈关注名单
zmxy;
查询芝麻评分
由于芝麻评分需要用户授权,因此首先需要生成授权URL
生成授权URL
授权URL可以通过姓名+身份证或者手机号得到, 同时又支持PC网页和H5页面,排列组合共4种情况如下
手机号+PC
const url = zmxyClient;
手机号+H5
const url = zmxyClient;
身份证+PC
const url = zmxyClient;
身份证+H5
const url = zmxyClient;
获得OpenId
获得授权URL后, 可以在浏览器中打开此URL,根据提示授权后会被重定向到芝麻应用的回调地址, 地址Query中的params
参数会携带OpenId, 可以通过如下方式获得
const open_id = zmxyClient;
查询芝麻信用分
有了OpenID后就可以查询芝麻信用分
zmxyClient;
查询行业关注名单
同上获得OpenId后可做如下查询
zmxyClient;
芝麻认证
流程与芝麻认证文档一致
1. 初始化并生成biz_no
let bizNo = null;zmxyClient;
2. 通过biz_no
生成芝麻认证URL
const url = zmxyClient.getCertificationCertifyUrl(bizNo, 'http://localhost');
3. 设备访问芝麻认证URL,再使用bizNo
查询芝麻认证结果
zmxyClient;
开启调试
由于SDK使用了request, 所以可以直接在命令行中通过环境变量开启Debug模式
NODE_DEBUG=request node app.js