使用 fingerprintjs2 获取浏览器指纹,生成浏览器唯一标识符

介绍:
Fingerprintjs2是一款开源的设备指纹采集器。最初的fingerprintjs库创建于2012年,但是由于新版本的开发很难保持向后兼容,因此Fingerprintjs2项目中增加了很多的新内容。

该项目将更多、更有效的来源用于指纹识别,并且可配置,也就是说用户可以选择性地开启其中的选项。该项目还将重点关注IE插件,尤其是在中国流行的QQ、Baidu等。另外,该项目使用了semver(语义化的版本控制系统)。

安装

npm install fingerprintjs2

引入使用

//在main.js里面引入调用
import Fingerprint2 from 'fingerprintjs2'
// 调用,一般是在main.js或者vuex里面调用
Fingerprint2.get(function(components) {
  const values = components.map(function(component,index) {
    if (index === 0) { //把微信浏览器里UA的wifi或4G等网络替换成空,不然切换网络会ID不一样
      return component.value.replace(/\bNetType\/\w+\b/, '')
    }
    return component.value
  })
  // 生成最终id murmur 
  console.log(values)  //使用的浏览器信息
  const murmur = Fingerprint2.x64hash128(values.join(''), 31)
  console.log(murmur) //生成的标识码
})

Demo地址:https://gitee.com/mangseng666/FingerprintDemon.git

clone下来,直接运行,看控制台就可以看到生成的指纹了。

疑问:因为决定因素比较多,所以如果其中有一个因素改变的话,就会改变这个标识符。所以隔几天就会有变化,只能在短时间内判断未登陆用户的一些行为,长时间的话还是要使用Token来判断。

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值