2025年11月02日
新增默认的 `userId` 生成策略(尊重用户隐私并考虑到SDK文件大小,没有使用fingerPrint2等指纹采集库,而是使用"少量浏览器信息" + "随机字符串" + "时间戳后缀" 生成,并做了持久化),对于日志统计这种业务场景而言这样的userId重复概率已经很低,完全可以接收。
2025年11月01日
- 客户端支持接收接口下发的配置参数,对上报数据中各个字段的值的长度进行限制。
- 减少上报字段 key 的长度(如 `pageUrl` => `pu`)。
2025年10月31日
将代码仓库中的采用 commonjs 模块化方案的编译脚本改成使用 ESM 模块化方案。
2025年10月30日
- 移除 `axios`,显著降低编译后的 SDK 文件大小(106KB => 39KB)。
- 不再上报性能指标(因为网络环境差异导致性能指标参加价值大幅下降,另外实际上大部分情况下不如直接打开浏览器Network面板模拟不同网络环境下进行优化来得直接)。
- 整理类型声明文件,将多个类型声明文件合并到一个 `types/index.d.ts` 文件中。
2025年10月17日
SDK 发送上报请求时,若为客户端通过 `navigator.sendBeacon` API 触发的 ping 请求,则在请求地址上添加 `Beacon` 后缀。(因为服务端不存在靠谱的方法可以判断请求是否为客户端通过 `navigator.sendBeacon` API 触发的 ping 请求)。
2025年10月16日
使用新 `Webpack` 替换 `Rollup` 彻底重构编译脚本,提供了更好的热更新能力,方便本地开发时进行网页端测试。