在登录、注册、交易等关键页面嵌入设备风险 SDK,采集设备指纹信息以识别欺诈风险。本文介绍 Web/H5 端接入流程及接口使用方法。
前提条件
已在风险识别控制台创建 Web/H5 应用,并获取 AppKey。
步骤一:嵌入 JS SDK
在需要防护页面的 <head> 或 <body> 中添加以下脚本,引入设备风险 SDK:
<script src="https://o.alicdn.com/captcha-frontend/aliyunFP/fp.min.js"></script>重要
因 js 文件会定期更新,为避免 js 失效影响您的使用,请不要将 js 下载到本地服务器上引入。
一个网页(包括单页应用 SPA)只需嵌入一次 JS SDK,嵌入后可在页面任意位置初始化。
步骤二:初始化 SDK
嵌入 JS SDK 后立即初始化(只需初始化一次),获取 SDK 对象:
ALIYUN_FP.use('um', (state, um) => {
if (state === 'loaded') {
um.init({
//这里填写风险识别控制台申请的 AppKey
appKey: 'your_app_key',
//这里填写 Web 应用名称,客户自定义
appName: 'your_web_app_name'
//endpoints : ['https://cloudauth-device.aliyuncs.com']
}, (state) => {
// state = success 表示初始化成功
console.info(state);
});
}
});重要
如果不指定服务地址,则 endpoints 会读取默认配置。请务必将 endpoints 的域名添加至小程序后台白名单,以确保相关功能正常运行。
endpoints 默认服务地址:
地域 | 服务地址 |
中国内地(默认) |
init 参数说明
参数 | 类型 | 是否必填 | 说明 |
| String | 是 | 风险识别控制台申请的 AppKey。 |
| String | 是 | Web 应用名称,自定义。 |
| Array | 否 | 服务地址数组。不指定时使用默认地址。 |
步骤三:获取 deviceToken
调用 getToken 接口获取设备指纹 deviceToken。建议在用户触发业务行为时调用,与 init 接口之间的时间间隔至少 2 秒,以确保初始化完成。
// 不传入 bizId,仅获取 deviceToken
window.z_um.getToken();
// 传入 bizId,将本次 token 和业务唯一认证 ID 绑定
window.z_um.getToken(bizId);参数说明
参数 | 类型 | 说明 |
| String | 业务唯一认证 ID,选填。传入后可以将本次 token 与该 bizId 绑定。 |
完整接入示例
以下示例包含嵌入 JS SDK、初始化 SDK 和获取 deviceToken 后发送请求的完整流程:
<body>
<button type="button" id='register' onclick="login();">登录</button>
<script type="text/javascript" src="https://o.alicdn.com/captcha-frontend/aliyunFP/fp.min.js"></script>
<script>
//在页面加载的时候第一时间初始化
ALIYUN_FP.use('um', (state, um) => {
if (state === 'loaded') {
um.init({
appKey: 'your_app_key',
appName: 'your_web_app_name'
//endpoints : ['https://cloudauth-device.aliyuncs.com']
}, (state) => {
//success 表示初始化成功
console.info(state);
});
}
});
//处理业务函数,比如登录
function login(){
//获取设备指纹的 deviceToken,getToken 和 init 之间最好相隔 2s 以上。
deviceToken = window.z_um.getToken();
//将 deviceToken 传入客户的服务后台
var data = {
"deviceToken": deviceToken,
"其他业务参数":""
};
//发送后台请求...后台通过 deviceToken 查询风险信息
}
</script>
</body>步骤四:服务端调用风险识别 API
将 deviceToken 与其他参数,参考服务端API接口接入,请求风险识别 API 接口进行识别。
该文章对您有帮助吗?