Web&H5

🤖 AI Prompt

复制 AI 提示词,粘贴到 Codex、Copilot、Claude Code 等AI 编码工具,即可自动生成代码,完成 TD SDK 集成

点击复制 AI 提示词

初始化 SDK

将以下代码嵌入关键业务入口页面的 head 标签内

<script type="text/javascript">
	(function(){
		window._fmOpt = {
			partner: 'your partnerCode',
			success: function(data) {
				console.log('blackBox: ', data)
			}
		};
		var fm = document.createElement('script'); 
    fm.type = 'text/javascript'; fm.async = true;
		fm.src = 'Base URL' + '?t=' + (new Date().getTime()/3600000).toFixed(0);
    var s = document.getElementsByTagName('script')[0]; 
    s.parentNode.insertBefore(fm, s);
	})();
</script>

Base URL

1.创建Base URL

2.复制Base URL


window._fmOpt 配置参数

参数类型描述备注示例是否必传移除字段
partnerString合作方名称由TD分配,请勿随意更改(只能字母、数字、下划线组合)demo
channelString渠道标识由TD分配,请勿随意更改(只能字母、数字、下划线组合)demo_web
successFunction成功回调成功获取到blackBox后,会调用传入的回调function(data){ console.log('blackBox:',data) }
timeoutInteger采集超时时间单位为ms,默认2000ms。超过指定时间未完成所有流程,则会获取到降级blackBox2000
strictModeBoolean严格模式true:降级时返回当前降级的blackBox
false:降级时返回缓存的上一次非降级的blackBox (默认)
false
geolocationBoolean开启地理位置采集true:开启(开启后,需客户自己获取权限,获取权限代码如下) false:不开启 (默认)falselatitude、longitude

geolocation配置为true时需客户主动获取地理位置权限

if (navigator.geolocation) {
  // 第一次执行会触发是否授权的弹框
  navigator.geolocation.getCurrentPosition(function () {}, function () {});
} else {
  // 当前环境不支持获取地理位置信息
}

同步获取blackBox的方法

同步方法可能增加降级 blackBox 的生成概率,请结合业务场景谨慎使用

if (window._fmOpt && window._fmOpt.getinfo) {
  // 同步获取blackBox
  var your_blackBox = window._fmOpt.getinfo()
} else {
  // JSSDK未加载完成
}

状态检查

  1. SDK上报数据成功,返回的结果长度为26位字符串。如: gWPHA1780038520GyQHv1YhD61。
  2. 异常情况下,返回的结果长度可能达到5000字符,详情可查看正常blackBox和降级blackBox的差异

获取SDK版本号

JS源文件获取

/**
 * TrustDeviceJs Pro v4.2.2 - Copyright (c) TrustDeviceJs, Inc, 2026 (https://www.trustdecision.com/solutions/trustdevice)
*/

运行时代码获取

window._fmOpt.sdkVersion