微信小程序/小游戏端接入教程

2024.02.22 09:47:22

    接入说明

    接入 智能风控 小程序/小游戏 SDK,开发者需要完成以下步骤:

    1. 添加易盾服务端域名白名单
    2. 引入/安装 SDK 文件
    3. 初始化 SDK
    4. 在需要检测的位置,调用 getToken 接口
    5. 根据自身需求,打开或关闭传感器
    6. 测试验证 SDK 接入成果
    

    接入步骤

    域名白名单

    使用公众号账号登录微信公众平台,在管理员首页的左侧栏,可以找到 开发 - 开发管理 菜单,点击页面上“开发设置”,需要将小程序 SDK 的服务器域名(地址:https://ir-sdk.dun.163.com, https://ir-sdk.dun.163yun.com 加入服务器域名白名单。

    引入/安装 SDK

    请登陆易盾官网后台风控引擎-服务管理获取sdk,详情如图。image title

    通过 CMD 引入 SDK, 请注意需要放在初始化代码之前。

    示例代码:

    const createProtector = require('yidunProtector.mp.cjs.js')
    

    初始化 SDK

    部分产品相关参数请用账号登陆易盾官网控制台获取参考image title

    执行 SDK 初始化。

    示例代码:

    const pt = createProtector({ appId: '<APP_ID>', timeout: 10000 })
    

    其中: appId 是应用标识,对应易盾控制台中的产品编号; timeout 数据上报超时时间,单位 ms,默认 6000

    :不可用的appId会导致服务端鉴权接口失败,请确保appId是正常可用的。

    私有化初始化 SDK

    执行私有化 SDK 初始化。 示例代码:

    const pt = createProtector({ appId: '<APP_ID>', apiServer:'https://xxxxx.xxxx.xxxx', timeout: 10000 })
    

    其中: appId 是应用标识,对应易盾控制台中的产品编号;apiServer 私有化服务器地址,私有化的客户需要通过该接口设置服务器地址,其他客户可以忽略;timeout 数据上报超时时间,单位 ms,默认 6000。 注:不可用的appId会导致服务端鉴权接口失败,请确保appId是正常可用的。

    调用 getToken

    在需要检测的位置调用接口 getToken,上报信息并获取查询凭证。

    示例代码:

    pt.getToken().then(result => {
      if (result.code === 200) { // 正常情况
        alert('get token:', result.token)
      }
      if (result.code === 201) { // 离线模式
        alert('get token:', result.token)
      }
    })
    

    传感器数据开关

    如果需要上报传感器数据,需要在初始化之前,打开传感器,如下所示

    wx.startAccelerometer()
    wx.startCompass()
    wx.startGyroscope()
    wx.startDeviceMotionListening()
    

    如需关闭,可参考下面的示例

    wx.stopAccelerometer()
    wx.stopCompass()
    wx.stopGyroscope()
    wx.stopDeviceMotionListening()
    

    建议调用 getToken 之后,立马关闭传感器

    pt.getToken().then(result => {
      wx.stopAccelerometer()
      wx.stopCompass()
      wx.stopGyroscope()
      wx.stopDeviceMotionListening()
      if (result.code === 200) { // 正常情况
        alert('get token:', result.token)
      }
      if (result.code === 201) { // 离线模式
        alert('get token:', result.token)
      }
    })
    

    getToken 返回有两种模式:

    • 正常模式,数据正常上报到设备指纹服务端,token 长度固定;
    • 离线模式,数据上报过程中出现异常,比如网络抖动/超时等,token 长度不固定,请注意做兼容处理。

    验证 SDK 接入成果

    前端获取到 token 后,将 token 上传到业务服务器; 业务服务器根据 token 向智能风控服务器发起校验,查询结果; 更多 token 使用细节见智能风控服务端在线检测接口(check)

    Online Chat Tel:95163223 Free trial