获取浏览器指纹方法
很早以前就知道有瀏覽器指紋的,不過我不知道怎么樣可以保存或者記錄瀏覽器指紋,剛瀏覽網(wǎng)頁,
發(fā)現(xiàn),竟然早就有瀏覽器指紋的實(shí)現(xiàn)方法了,很開心啊,竟然還可以前端來做,這下更開心了。
1.微信支付里面有相關(guān)的方法
背景介紹
由于用戶網(wǎng)絡(luò)使用代理或網(wǎng)絡(luò)環(huán)境復(fù)雜的原因?qū)е聼o法獲取準(zhǔn)確的用戶端IP,商戶側(cè)可在統(tǒng)一下單時(shí)傳遞fingerprint參數(shù)給微信側(cè),用于輔助校驗(yàn)
這里需要注意,瀏覽器指紋并不能完全代替客戶端IP(spbill_create_ip),也就是說在設(shè)置fingerprint字段的同時(shí),
spbill_create_ip字段也必須傳遞且不能亂傳(如傳內(nèi)網(wǎng)IP,調(diào)起支付還是會引發(fā)攔截)
fingerprint設(shè)置步驟
1. 在下單面引入JS: https://wx.gtimg.com/wxpay_h5/fingerprint2.min.1.5.1.js
2. 調(diào)用Fingerprint2()獲取瀏覽器指紋
         <script type="text/javascript">
                   var fp=new Fingerprint2();
                   fp.get(function(result){
                       //result即為獲取到的瀏覽器指紋值
                    });
          </script>
3. 統(tǒng)一下單接口新增fingerprint字段,把第二步中的result值傳遞給fingerprint字段發(fā)起下單操作即可,其它步驟不變
原文地址為:https://pay.weixin.qq.com/wiki/doc/api/H5.php?chapter=15_7&index=6
在vue中獲取瀏覽器指紋方法
1.vue安裝插件
npm install --save fingerprintjs2
2.vue需要用到的地方引入
import Fingerprint2 from 'fingerprintjs2'
3.調(diào)用
Fingerprint2.get(function(components) {
  const values = components.map(function(component,index) {
    if (index === 0) { //把微信瀏覽器里UA的wifi或4G等網(wǎng)絡(luò)替換成空,不然切換網(wǎng)絡(luò)會ID不一樣
      return component.value.replace(/NetType/w+/, '')
    }
    return component.value
  })
  // 生成最終id murmur   
  const murmur = Fingerprint2.x64hash128(values.join(''), 31);
  console.log('瀏覽器指紋碼:'+murmur )
})
本文看自:https://www.jianshu.com/p/11fe954c5ed9
總結(jié)
                            
                        - 上一篇: 蔚来汽车 3000 万次换电服务达成
 - 下一篇: js 动态添加元素(div、li、img