浏览器指纹

WEB如果提供了账户登录,我们自然可以区分。如果是匿名用户我们如何区分呢,这时就需要浏览器指纹了。浏览器指纹是浏览器在特定时间点上,由用户设备上所有可用的信息生成的唯一标识符。浏览器JS本身是无法直接提供指纹的,需要自行实现,当然社区已有成熟的类库,比如 fingerprintjs。

fingerprintjs v3

fingerprintjs最新版是v4,但是v4和v3的License不同,v4使用的协议是BSL,要求版本推出4年后才会转MIT,因此2024年,我们还无法使用v4,而v3是MIT协议,则可以放心使用。

准确率

  • 开源版准确率为(40% - 60%),商用版为99.5%,注意服务端之所以准确率高,是因为也包含了服务端组件。
  • 指纹有效期只有几周。

使用

1
2
3
4
5
6
7
const fpPromise = new FingerprintJS.load();
fpPromise
.then(fp => fp.get())
.then(result => {
const visitorId = result.visitorId;
console.log(visitorId)
})

相关文档