1// íë¼ë¯¸í° Parsing 2// ì ëë¡ gd_visit.js íì¼ ì´ë¦ ë³ê²½íì§ ë§ ê² (í´ë¹ íì¼ ì´ë¦ì¼ë¡ script íì) 3var VISITPARAM = (function () { 4 var script = document.getElementsByTagName('script'); 5 for (const idx in script) { 6 if (typeof script[idx].src !== 'undefined' && script[idx].src.indexOf('gd_visit') !== -1) { 7 var param = script[idx].src 8 .replace(/^[^\?]+\?/, '') 9 .replace(/#.+$/, '') 10 .split('&'); 11 var queries = {} 12 , query; 13 while (param.length) { 14 query = param.shift().split('='); 15 queries[query[0]] = query[1]; 16 } 17 break; 18 } 19 } 20 return queries; 21})(); 22 23(function () { 24 // bfìºììë ìì§ë ì ìëë¡ pageshow ì¬ì© 25 window.addEventListener('pageshow', function (event) { 26 // ìì ìë¡ê³ 침(리ë¤ì´ë í¸ ìë ìë¡ê³ 침)ì¸ ê²½ì°ìë§ ìì§íì§ ìì 27 if (typeof performance !== 'undefined' && performance.getEntriesByType) { 28 const [navigation] = performance.getEntriesByType("navigation"); 29 if (navigation && navigation.type === "reload" && navigation.redirectCount === 0) { 30 // ë·í¼ë¬ ë기 íµê³¼ í ì§ì í ê²½ì° ë°©ë¬¸ì ìì§ ì§í 31 const NETFUNNEL_PASS_FLAG = 'visit_netfunnel_pass'; 32 if (sessionStorage.getItem(NETFUNNEL_PASS_FLAG)) { 33 sessionStorage.removeItem(NETFUNNEL_PASS_FLAG); 34 } else { 35 return; 36 } 37 } 38 try { 39 // ì¸ì ì§ì ìê° ê³ì° 40 let sessionDurationTime = sessionStorage.getItem('visit_session_duration'); 41 let currentTime = new Date().getTime(); 42 let leaveDuration = null; 43 44 if (sessionDurationTime) { 45 leaveDuration = Math.floor((currentTime - Number(sessionDurationTime)) / 1000); 46 } 47 sessionStorage.setItem('visit_session_duration', currentTime.toString()); 48 49 const VISITPARAMREQUEST = VISITPARAM.requestData; 50 const VISITPARAMDATA = JSON.parse(decodeURIComponent(VISITPARAMREQUEST)); 51 const VISITURL = decodeURIComponent(VISITPARAM.requestUrl); 52 const VISITURLPARAM = { 53 "base_time": VISITPARAMDATA.base_time, 54 "mall_id": VISITPARAMDATA.mall_id, 55 "user_id": VISITPARAMDATA.user_id, 56 "refer": VISITPARAMDATA.refer, 57 "uri": VISITPARAMDATA.uri, 58 "domain": VISITPARAMDATA.domain, 59 "country": VISITPARAMDATA.country, 60 "solution": VISITPARAMDATA.solution, 61 "leave_duration": leaveDuration, 62 "session_key": VISITPARAMDATA.session_key, 63 "tracking_key": VISITPARAMDATA.tracking_key, 64 "analytics_client_id": VISITPARAMDATA.analytics_client_id, 65 "analytics_session_id": VISITPARAMDATA.analytics_session_id, 66 }; 67 68 $.ajax({ 69 url: VISITURL, 70 type: "POST", 71 headers: {'Content-Type': 'application/json; charset=UTF-8'}, 72 data: JSON.stringify(VISITURLPARAM), 73 timeout: 5000, 74 complete: function () { 75 }, 76 error: function (request, status, error) { 77 console.log(error); 78 } 79 }); 80 } catch (e) { 81 console.log(e); 82 } 83 } 84 }); 85})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.