From 4b9549dfbf55d8af415efe609623e9d19dd6e6d4 Mon Sep 17 00:00:00 2001 From: Lawrence <1934378145@qq.com> Date: 星期四, 21 一月 2021 19:57:57 +0800 Subject: [PATCH] 添加浏览器ID,确保SSE可同时推送到不同的前端 --- web_src/src/main.js | 22 ++++++++++++++++++++-- 1 files changed, 20 insertions(+), 2 deletions(-) diff --git a/web_src/src/main.js b/web_src/src/main.js index ae2baee..03bb4a4 100644 --- a/web_src/src/main.js +++ b/web_src/src/main.js @@ -8,10 +8,28 @@ import VueCookies from 'vue-cookies'; import echarts from 'echarts'; -import VueClipboard from 'vue-clipboard2' +import VueClipboard from 'vue-clipboard2'; import { Notification } from 'element-ui'; +import Fingerprint2 from 'fingerprintjs2'; -Vue.use(VueClipboard) +// 生成唯一ID +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; + }) + //console.log(values) //使用的浏览器信息npm + // 生成最终id + let port = window.location.port; + console.log(port); + const fingerPrint = Fingerprint2.x64hash128(values.join(port), 31) + Vue.prototype.$browserId = fingerPrint; + console.log("唯一标识码:" + fingerPrint); +}); + +Vue.use(VueClipboard); Vue.use(ElementUI); Vue.use(VueCookies); Vue.prototype.$axios = axios; -- Gitblit v1.8.0