## 接入步骤 请登录易盾官网后台 (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... })