## 接入步骤
请登录易盾官网后台 (https://dun.163.com/dashboard?v=0116&locale=zh-CN#/m/risk-manage/service/)风控引擎-服务管理获取SDK,详情如图image title (https://nos.netease.com/yidun/e5adb07ec735e95205e83d48bb2a00aa.png)
### 引入/安装js SDK
#### Web
建议直接通过 script 引入, 将放在初始化代码之前
Code (html):
#### uni-app(H5)
Code (js):
import createNEGuardian from './YiDunProtector-Web.js'
或者
import './YiDunProtector-Web.js'
### 初始化SDK
执行SDK初始化。
Code (js):
const neg = createNEGuardian({ productId: '', timeout: 6000 })
其中:
productId 是应用标识,对应易盾控制台中的产品编号,YD开头
timeout 数据上报超时时间,单位 ms,默认 6000
注:不可用的productId会导致服务端鉴权接口失败,请确保productId是正常可用的。
### 私有化初始化SDK
执行SDK初始化。
Code (js):
const neg = createNEGuardian({ productId: '', apiServer:'https://xxxxx.xxxx.xxxx', timeout: 6000 })
其中:
productId 是应用标识,对应易盾控制台中的产品编号,YD开头
apiServer 私有化服务器地址,私有化的客户需要通过该接口设置服务器地址,其他客户可以忽略
timeout 数据上报超时时间,单位 ms,默认 6000
注:不可用的productId会导致服务端鉴权接口失败,请确保productId是正常可用的。
### 获取 Token
Code (js):
neg.getToken().then(result => {
if (result.code === 200) { // 正常情况
alert('get token:', result.token)
}
if (result.code === 201) { // 离线模式
alert('get token:', result.token)
}
})
getToken 返回有两种模式:
- 正常模式,数据正常上报到设备指纹服务端,token 长度固定
- 离线模式,数据上报过程中出现异常,比如网络抖动/超时等,token 长度不固定
web/小程序sdk的token可能包含 + ,不建议在传输中使用application/x-www-form-urlencoded,建议application/json
### 校验结果
前端获取到 token 后,将 token 上传到业务服务器。
业务服务器根据 token 向智能风控服务器发起校验,查询结果
更多接入细节见智能风控服务端接入文档。
### 模拟操作AI识别
批量的模拟操作影响游戏正常运营,请在作弊情况较严重的玩法和场景下调用registerTouchEvent和unregisterTouchEvent,开启和关闭数据采集,初次接入建议设置一个玩法和场景id,并同步给易盾,如需接入多个玩法和场景需提前与易盾沟通。 开启registerTouchEvent后,在该场景结束后必须调用unregisterTouchEvent关闭检测逻辑。
#### 开启采集
Code (js):
neg.registerTouchEvent('serverId', 'roldId', gameplayId, scendId, 'canvas').then(function () {
// your handle...
})
其中:
serverId 是服务器id,格式为string
roleId 是角色id,格式为string
gameplayId 是玩法id,格式为number
scendId 是场景id,格式为number
canvas 是待监听画布对象,不能为空,否则功能将不能正常开启,格式为HTMLCanvasElement
#### 关闭采集
Code (js):
neg.unregisterTouchEvent().then(function () {
// your handle...
})