浏览器唯一id?浏览器设备指纹,使用随机生成16位字母数字组合数-创新互联

一、什么是浏览器设备指纹?

创新互联公司主营横山网站建设的网络公司,主营网站建设方案,app软件开发公司,横山h5微信小程序定制开发搭建,横山网站营销推广欢迎横山等地区企业咨询

第二代指纹追踪是设备指纹技术,发现 IP 背后的设备。通过 js 获取操作系统、分辨率、像素比等等一系列信息,传到后台计算,然后归并设备。

唯一性可以保证,但准确率很难完全保证。主要原因就是在跨浏览器指纹识别上面。跨浏览器之后,第二代技术中很重要的 canvas 指纹、浏览器插件指纹都变了,所以很难把跨浏览器指纹归并到同一设备上。

(这是从网上找的比较容易理解的解释)

二、如何使用?

https://github.com/fingerprintjs/fingerprintjsyhttps://github.com/fingerprintjs/fingerprintjs我用的是这个开源的代码,点进去会有教程教你怎么使用的。以下是我的使用代码:

  const fpPromise = import('https://openfpcdn.io/fingerprintjs/v3')

  .then(FingerprintJS =>FingerprintJS.load())

  // Get the visitor identifier when you need it.

  fpPromise

  .then(fp =>fp.get())

  .then(result =>{

  // This is the visitor identifier:

  const visitorId = result.visitorId

  // 写入localStorage

  browserId = visitorId

  getbrowserId(browserId)

  console.log("visitorId   "+visitorId)

  })

  .catch(error =>console.error(error))

  function getbrowserId( browserId ){

  if(!window.localStorage){

  swal("当前浏览器版本比较低,请更换浏览器使用");

  }else{

  let storage=window.localStorage;

  if(storage.browserId != null){

  browserId = storage.browserId;

  }else{

  storage.browserId = browserId;

  }

  }

  }

在使用的时候呢发现,首次打开网页,和打开之后刷新一下后获得的id是不一样的。但是下一次清除掉缓存,再次打开和首次打开的id是一致的,刷新后和刷新后是一致的。

我有时候会获取不到,虽然几率非常小小(下面是随机生成16位数字和字母组合的方法)

function getRamNumber(){

  var result='';

  for(var i=0;i<16;i++){

result+=Math.floor(Math.random()*16).toString(16)

  }

  return result;

  }

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享标题:浏览器唯一id?浏览器设备指纹,使用随机生成16位字母数字组合数-创新互联
本文路径:http://scyanting.com/article/pphsi.html