Fingerprint2 获取浏览器指纹localStorage.setItem('browserId', murmur);
引入 fingerprint2
<script type="text/javascript" src="fingerprint2.min.js"></script>
调用
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并存储 const murmur = Fingerprint2.x64hash128(values.join(''), 31); localStorage.setItem('browserId', murmur); });
注意
localStorage.setItem('browserId', murmur);
指纹缓存到浏览器中也是可以被修改的,所以根据自身情况,选择是否要缓存
当然即便是不缓存,js文件也起不了判断浏览器的唯一性,例如用抓包工具,咋改就咋改