1 |
- {"remainingRequest":"/Users/lihai/jolijoli/pad_spa/node_modules/babel-loader/lib/index.js!/Users/lihai/jolijoli/pad_spa/node_modules/eslint-loader/index.js??ref--13-0!/Users/lihai/jolijoli/pad_spa/src/common/tool.js","dependencies":[{"path":"/Users/lihai/jolijoli/pad_spa/src/common/tool.js","mtime":1652164403078},{"path":"/Users/lihai/jolijoli/pad_spa/babel.config.js","mtime":1649813268617},{"path":"/Users/lihai/jolijoli/pad_spa/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/lihai/jolijoli/pad_spa/node_modules/babel-loader/lib/index.js","mtime":315532800000},{"path":"/Users/lihai/jolijoli/pad_spa/node_modules/eslint-loader/index.js","mtime":499162500000}],"contextDependencies":[],"result":["function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nimport * as config from '@/config/env';\nimport store from '@/store/index';\nimport urls from '@/server/urls';\nvar tool = {\n timeSpace: 0,\n //本地和服务器的时间间隔\n fetchSKtime: 0,\n //获取sessionkey超时的重试次数\n getUrlParam: function getUrlParam(name) {\n var reg = new RegExp(\"(^|&)\" + name + \"=([^&]*)(&|$)\");\n if (location.href.indexOf(\"?\") < 0) return \"\";\n var r = location.href.split(\"?\")[1].match(reg);\n\n if (r != null) {\n var d = decodeURIComponent(r[2]);\n return tool.getIntValue(d);\n }\n\n return '';\n },\n getCookieValue: function getCookieValue(name) {\n var nameEQ = name + \"=\";\n var ca = document.cookie.split(';');\n\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n\n while (c.charAt(0) == ' ') {\n c = c.substring(1, c.length);\n }\n\n if (c.indexOf(nameEQ) == 0) {\n return c.substring(nameEQ.length, c.length);\n }\n }\n\n return \"\";\n },\n getIntValue: function getIntValue(value) {\n if (value === 'null' || value === 'undefined' || value === null || value === undefined) {\n return '';\n } else if (value === '0') {\n return 0;\n }\n\n return value;\n },\n createCookie: function createCookie(name, value, days) {\n var expires = \"\";\n\n if (days) {\n var date = new Date();\n date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);\n expires = \"; expires=\" + date.toGMTString();\n }\n\n var cookieDomain = \"\";\n\n if (name == \"user_id\" || name == \"xyy\") {\n cookieDomain = \"; domain=51yund.com\";\n }\n\n document.cookie = name + \"=\" + encodeURIComponent(value) + expires + cookieDomain + \"; path=/\";\n },\n getYdUserKey: function getYdUserKey(key) {\n // 取值的时候先取store,再取storage\n var storeVal = store.state.comVal;\n var val = \"\";\n\n if (storeVal[key]) {\n val = storeVal[key];\n } else {\n val = _getLocalStorage(key) || sessionStorage.getItem(key);\n val = tool.getIntValue(val);\n\n if (!val) {\n val = tool.getUrlParam(key);\n }\n\n if (val) {\n store.dispatch('saveCommonValue', {\n key: key,\n value: val\n });\n }\n }\n\n return val;\n },\n // 本地持久化存储\n setStorage: function setStorage(name, value, expires) {\n if (window.ydStorage) {\n ydStorage.setItem(name, value, expires);\n } else {\n localStorage.setItem(name, value);\n }\n },\n getSessionKey: function getSessionKey(userId, xyy, cb) {\n var param = {\n \"user_id\": userId,\n \"xyy\": xyy\n };\n return $http.post(urls.getsskey, param, true).then(function (res) {\n if (res.code === 0) {\n var sessionkey = res.session_key;\n\n if (sessionkey) {\n tool.fetchSKtime = 0; //获取成功之后把fetchSKtime还原\n //存值的时候先存store,再存localStorage,存store为了取值更快,存storage为了看方便\n\n store.dispatch('saveCommonValue', {\n key: 'session_key',\n value: sessionkey\n });\n tool.setStorage(\"session_key\", sessionkey, res.session_ttl);\n store.dispatch('saveCommonValue', {\n 'key': 'user_id',\n 'value': userId\n });\n localStorage.setItem(\"user_id\", userId);\n store.dispatch('saveCommonValue', {\n 'key': 'xyy',\n 'value': xyy\n });\n localStorage.setItem(\"xyy\", xyy);\n }\n\n var hasLogin = userId == 0 ? false : true;\n if (cb) cb(hasLogin);\n return sessionkey;\n } else if (res.code !== 7007) {\n //userId和xyy不匹配或其它异常情况,最常见的场景是首次进来时,用户之前本地存储的xyy过期,7007的情况在http层统一处理\n tool.toLogin();\n }\n }).catch(function (res) {\n location.href = 'https://ydcommon.51yund.com/circle_html/error_index/errIndex.html';\n });\n },\n //简化版js节流,默认2s内只能点击一次\n throttle: function throttle(callback) {\n var duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2000;\n var lastTime = tool.lastTime || 0;\n var now = new Date().getTime();\n\n if (now - lastTime > duration) {\n callback();\n tool.lastTime = now;\n }\n },\n //记录上报(访问来源上报、错误上报)\n reportCmd: function reportCmd(data) {\n $http.postOnly(config.logPath + '/sport/report', data);\n },\n // 上报错误信息\n postErrLog: function postErrLog(data, cmdName) {\n var hosts = location.host;\n\n if ((hosts.indexOf(\"localhost\") > -1 || hosts.indexOf(\"test\") > -1) && !config.logFlag.dev) {\n return;\n }\n\n var param = {\n user_id: tool.getYdUserKey('user_id') || 0,\n cmd: cmdName,\n device_id: 'yuedongweb',\n data: JSON.stringify(data)\n };\n tool.reportCmd(param);\n },\n $throwJS: function $throwJS(data) {\n //抛出js异常\n var obj = {\n //公共部分\n platform: \"web\",\n local_path: location.pathname,\n local_url: location.href,\n package_name: config.logFlag.packageName\n };\n Object.assign(obj, data);\n var filterJsErr = [];\n\n if (config.filterErr && config.filterErr.length > 0) {\n filterJsErr.push.apply(filterJsErr, _toConsumableArray(config.filterErr));\n }\n\n if (filterJsErr.indexOf(obj.err_msg) > -1) return;\n var cmd_name = 'vue_jserr';\n\n if (obj.err_msg && obj.err_msg.indexOf('http') > -1) {\n cmd_name = 'vue_reserr'; //reserr表示资源加载异常(resource error)\n }\n\n tool.postErrLog(obj, cmd_name);\n },\n // 抛出请求异常\n $throw: function $throw(err, info, uri, response) {\n var obj = {\n local_url: location.href,\n local_path: location.pathname,\n err_msg: err + '',\n req_params: info,\n req_uri: uri\n };\n\n if (response) {\n //返回值结构体异常\n obj.response = response;\n }\n\n var filterErr = config.filterErr;\n if (filterErr && filterErr.indexOf(obj.err_msg) > -1) return;\n tool.postErrLog(obj, 'vue_reqerr');\n },\n //去登录\n toLogin: function toLogin(backUrl) {\n localStorage.removeItem('session_key');\n localStorage.removeItem('xyy');\n var cbUrl = backUrl ? backUrl : location.href;\n cbUrl = encodeURIComponent(cbUrl); // cbUrl = _clearUlrData(cbUrl);\n // if(config.appId){ //如果配置了appid就走新的sso登录,否则还是走老的\n // location.href = `${config.ssoPath}/v${config.appVersion || 1}/user/login?appid=${config.appId}&cburl=${cbUrl}`;\n // } else {\n // location.href= config.ssoPath + \"/get_tickets?cburl=\"+cbUrl+\"&lg_way=wx\"\n // }\n }\n};\nexport var injectTool = function injectTool() {\n if (typeof window.tool == 'undefined') {\n window.tool = tool;\n }\n}; //跳转登录时去掉url上的user_id、xyy和is_login\n\nfunction _clearUlrData(cbUrl) {\n if (cbUrl.indexOf(\"?\") == -1) return encodeURIComponent(cbUrl);\n\n var _cbUrl$split = cbUrl.split(\"?\"),\n _cbUrl$split2 = _slicedToArray(_cbUrl$split, 2),\n url = _cbUrl$split2[0],\n query = _cbUrl$split2[1];\n\n var arr = ['user_id', 'xyy', 'is_login'];\n\n for (var i = 0; i < arr.length; i++) {\n if (query.indexOf(arr[i]) > -1) {\n var reg = new RegExp('(^|&)' + arr[i] + '=[^&]*', 'g');\n query = query.replace(reg, '');\n }\n }\n\n if (query) {\n if (query.indexOf('&') === 0) {\n //最开始一位是&时去掉\n query = query.slice(1);\n }\n\n url += '?' + query;\n }\n\n return encodeURIComponent(url);\n}\n\nfunction _getLocalStorage(name) {\n if (window.ydStorage) {\n return ydStorage.getItem(name);\n } else {\n return localStorage.getItem(name);\n }\n}",{"version":3,"sources":["/Users/lihai/jolijoli/pad_spa/src/common/tool.js"],"names":["config","store","urls","tool","timeSpace","fetchSKtime","getUrlParam","name","reg","RegExp","location","href","indexOf","r","split","match","d","decodeURIComponent","getIntValue","getCookieValue","nameEQ","ca","document","cookie","i","length","c","charAt","substring","value","undefined","createCookie","days","expires","date","Date","setTime","getTime","toGMTString","cookieDomain","encodeURIComponent","getYdUserKey","key","storeVal","state","comVal","val","_getLocalStorage","sessionStorage","getItem","dispatch","setStorage","window","ydStorage","setItem","localStorage","getSessionKey","userId","xyy","cb","param","$http","post","getsskey","then","res","code","sessionkey","session_key","session_ttl","hasLogin","toLogin","catch","throttle","callback","duration","lastTime","now","reportCmd","data","postOnly","logPath","postErrLog","cmdName","hosts","host","logFlag","dev","user_id","cmd","device_id","JSON","stringify","$throwJS","obj","platform","local_path","pathname","local_url","package_name","packageName","Object","assign","filterJsErr","filterErr","push","err_msg","cmd_name","$throw","err","info","uri","response","req_params","req_uri","backUrl","removeItem","cbUrl","injectTool","_clearUlrData","url","query","arr","replace","slice"],"mappings":"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","sourcesContent":["import * as config from '@/config/env'\nimport store from '@/store/index'\nimport urls from '@/server/urls'\nconst tool = {\n timeSpace: 0, //本地和服务器的时间间隔\n fetchSKtime:0, //获取sessionkey超时的重试次数\n getUrlParam: function(name){\n const reg = new RegExp(\"(^|&)\" + name + \"=([^&]*)(&|$)\");\n if(location.href.indexOf(\"?\") < 0) return \"\";\n let r = location.href.split(\"?\")[1].match(reg);\n if (r != null){\n let d = decodeURIComponent(r[2]);\n return tool.getIntValue(d);\n }\n return '';\n },\n getCookieValue: function(name){\n let nameEQ = name + \"=\";\n let ca = document.cookie.split(';');\n for (let i = 0; i < ca.length; i++) {\n let c = ca[i];\n while (c.charAt(0) == ' ') c = c.substring(1, c.length);\n if (c.indexOf(nameEQ) == 0) {\n return c.substring(nameEQ.length, c.length);\n }\n }\n return \"\";\n },\n getIntValue(value){\n if(value === 'null' || value === 'undefined' || value === null || value === undefined){\n return ''\n } else if(value === '0'){\n return 0\n }\n return value\n },\n createCookie(name, value, days) {\n let expires = \"\";\n if (days) {\n var date = new Date();\n date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\n expires = \"; expires=\" + date.toGMTString();\n }\n let cookieDomain = \"\";\n if(name == \"user_id\" || name == \"xyy\"){\n cookieDomain = \"; domain=51yund.com\";\n }\n document.cookie = name + \"=\" + encodeURIComponent(value) + expires + cookieDomain + \"; path=/\";\n },\n getYdUserKey: function (key) {\n // 取值的时候先取store,再取storage\n let storeVal = store.state.comVal;\n let val = \"\";\n if(storeVal[key]){\n val = storeVal[key];\n } else {\n val = _getLocalStorage(key) || sessionStorage.getItem(key);\n val = tool.getIntValue(val);\n if(!val){\n val = tool.getUrlParam(key);\n }\n if(val){\n store.dispatch('saveCommonValue', {key:key, value: val})\n }\n }\n return val;\n },\n // 本地持久化存储\n setStorage(name, value, expires){\n if(window.ydStorage){\n ydStorage.setItem(name, value, expires)\n } else {\n localStorage.setItem(name, value);\n }\n },\n getSessionKey: function(userId, xyy, cb) {\n var param = {\"user_id\":userId, \"xyy\":xyy};\n return $http.post(urls.getsskey, param, true).then(function(res){\n if(res.code === 0){\n let sessionkey = res.session_key;\n if(sessionkey){\n tool.fetchSKtime = 0; //获取成功之后把fetchSKtime还原\n //存值的时候先存store,再存localStorage,存store为了取值更快,存storage为了看方便\n store.dispatch('saveCommonValue', {key:'session_key', value: sessionkey});\n tool.setStorage(\"session_key\", sessionkey, res.session_ttl);\n store.dispatch('saveCommonValue', { 'key': 'user_id', 'value': userId });\n localStorage.setItem(\"user_id\", userId);\n store.dispatch('saveCommonValue', { 'key': 'xyy', 'value': xyy });\n localStorage.setItem(\"xyy\", xyy);\n }\n let hasLogin = userId == 0? false : true;\n if(cb) cb(hasLogin);\n return sessionkey;\n } else if(res.code !== 7007) { //userId和xyy不匹配或其它异常情况,最常见的场景是首次进来时,用户之前本地存储的xyy过期,7007的情况在http层统一处理\n tool.toLogin();\n }\n }).catch(res=>{\n location.href = 'https://ydcommon.51yund.com/circle_html/error_index/errIndex.html';\n });\n },\n //简化版js节流,默认2s内只能点击一次\n throttle: function(callback, duration = 2000){\n let lastTime = tool.lastTime || 0;\n let now = new Date().getTime();\n if(now - lastTime > duration){\n callback();\n tool.lastTime = now;\n }\n },\n //记录上报(访问来源上报、错误上报)\n reportCmd: function (data) {\n $http.postOnly(config.logPath + '/sport/report', data)\n },\n // 上报错误信息\n postErrLog(data, cmdName) {\n let hosts = location.host;\n if((hosts.indexOf(\"localhost\") > -1 || hosts.indexOf(\"test\") > -1) && !config.logFlag.dev){\n return ;\n }\n let param = {\n user_id: tool.getYdUserKey('user_id') || 0,\n cmd: cmdName,\n device_id: 'yuedongweb',\n data: JSON.stringify(data)\n }\n tool.reportCmd(param);\n },\n $throwJS(data){ //抛出js异常\n let obj = { //公共部分\n platform: \"web\",\n local_path: location.pathname,\n local_url: location.href,\n package_name: config.logFlag.packageName\n }\n Object.assign(obj, data);\n let filterJsErr = [];\n if(config.filterErr && config.filterErr.length > 0){\n filterJsErr.push(...config.filterErr);\n }\n if(filterJsErr.indexOf(obj.err_msg) > -1) return;\n let cmd_name = 'vue_jserr';\n if(obj.err_msg && obj.err_msg.indexOf('http') > -1){\n cmd_name = 'vue_reserr'; //reserr表示资源加载异常(resource error)\n }\n tool.postErrLog(obj, cmd_name);\n },\n // 抛出请求异常\n $throw(err, info, uri, response){\n let obj = {\n local_url: location.href,\n local_path: location.pathname,\n err_msg: err + '',\n req_params: info,\n req_uri: uri\n }\n if(response){ //返回值结构体异常\n obj.response = response\n }\n let filterErr = config.filterErr;\n if(filterErr && filterErr.indexOf(obj.err_msg) > -1) return;\n tool.postErrLog(obj, 'vue_reqerr');\n },\n //去登录\n toLogin: function(backUrl) {\n localStorage.removeItem('session_key');\n localStorage.removeItem('xyy');\n let cbUrl = backUrl? backUrl : location.href;\n cbUrl = encodeURIComponent(cbUrl);\n // cbUrl = _clearUlrData(cbUrl);\n // if(config.appId){ //如果配置了appid就走新的sso登录,否则还是走老的\n // location.href = `${config.ssoPath}/v${config.appVersion || 1}/user/login?appid=${config.appId}&cburl=${cbUrl}`;\n // } else {\n // location.href= config.ssoPath + \"/get_tickets?cburl=\"+cbUrl+\"&lg_way=wx\"\n // }\n\n },\n}\n\nexport const injectTool= () => {\n if (typeof window.tool == 'undefined') {\n window.tool = tool;\n }\n}\n//跳转登录时去掉url上的user_id、xyy和is_login\nfunction _clearUlrData(cbUrl) {\n if(cbUrl.indexOf(\"?\") == -1) return encodeURIComponent(cbUrl);\n let [url, query] = cbUrl.split(\"?\");\n let arr = ['user_id', 'xyy', 'is_login'];\n for(let i = 0; i<arr.length; i++){\n if(query.indexOf(arr[i]) > -1){\n let reg = new RegExp('(^|&)' + arr[i] +'=[^&]*', 'g');\n query = query.replace(reg, '')\n }\n }\n if(query){\n if(query.indexOf('&') === 0){ //最开始一位是&时去掉\n query = query.slice(1);\n }\n url += '?' + query\n }\n return encodeURIComponent(url)\n}\n\nfunction _getLocalStorage(name) {\n if(window.ydStorage){\n return ydStorage.getItem(name)\n } else {\n return localStorage.getItem(name);\n }\n}"]}]}
|