API Reference
English

字节小程序


1. 添加同盾域名

小程序对各种请求接口都做了域名限制,所以需要在小程序网站后台页面中添加同盾域名才可以保证小程序能正常给同盾设备指纹服务器发送信息

设置-开发设置-服务器域名request 合法域名中添加:

环境域名
生产环境(必须)<https://fp.tongdun.net>

注意:

  • 同盾字节跳动小程序设备指纹 SDK 仅支持客户端基础库版本**为 1.15.0 以上的字节跳动系列 App 客户端,在小程序后台可以设置最低基础库版本,当低于该版本的用户打开时会提示用户升级 App

2. 插入 canvas 节点

同盾小程序设备指纹中使用了 canvas 指纹技术,由于目前小程序的限制,我们无法通过 JS 来动态创建 DOM 节点,所以需要在集成时手动加入。假设我们想在 index 页面中采集设备信息,那么就需要在 pages/index/index.ttml 文件末尾添加以下代码:

<view>
    <canvas canvas-id='tdcanvas' style={{ visibility: "hidden", position: "fixed", zIndex: "-999", left: "9999px" }}></canvas>
</view>

注意:

  • 样式文件让设备指纹 SDK 立即隐藏这个节点,SDK 会在用户感知不到的时间内完成采集
  • 请勿修改 canvas-id,修改会导致 SDK 无法正常工作

3. 必要配置

app.js 中:partnerCodeappName 为必要参数,如果没有传入则初始化时会抛出异常

App({
	......
	globalData: {
		......
		_fmOpt: {
			partnerCode: "", // 请填入您的 partner code
			appKey: "", // 请填入您的 appKey
			channel:"", // 请填入您的 channel
		}
	}
})

说明:appKey获取方式:https://cn-doc.trustdecision.com/update/reference/%E5%B0%8F%E7%A8%8B%E5%BA%8F%E8%8E%B7%E5%8F%96-appkey#/

4. 获取blackbox

在每一次获取设备信息的时候都需要创建一个实例。比如:在 pages/index/index.js 中,先在文件顶部引用 SDK 文件,然后调用getDeviceInfo方法

import FMAgent from '../../.../fm-xxx-es.saas.js'
...
...
...
var that = this
var fmagent = new FMAgent(app.globalData._fmOpt)
fmagent.getDeviceInfo({
  page: that,
  unionid:'', // 请传入userid
}).then(function(result){
  if(result.apiStatus.code === 0) {
    var anonymousId = result.anonymousId;
    var blackBox = result.blackBox; 
    var fpVersion = result.fpVersion;
    var deviceRiskScore = result.deviceRiskScore;
    var sealedResult = result.sealedResult;
    var message = result.apiStatus.message;  
  } else {
    var code = result.apiStatus.code;
    var message = result.apiStatus.message;
  }
})

说明

响应结果

字段描述
anonymousId设备匿名ID,设备标识
blackBox设备信息查询标识)
fpVersionSDK版本号
deviceRiskScore当前设备风险分
sealedResult加密的设备信息,二进制 Base64 编码字符串,仅在客户端密封结果开启时返回,解密结果与设备信息查询获取的信息一致

状态信息定义

sdk返回的状态码对应的信息说明

codemessage备注
0Success成功
1001SDK errsdk发生异常
1002Network error网络错误
1003API err后端接口返回错误
1004Traffic limit网关限流
1100Unknown error未知错误