PageSourceSearch

https://bkmic.com/admin/gd_share/script/visit/gd_visit.js?requestU…d7b-7690-94eb-09efe51079c5%22%7D&dummyData=

js bkmic.com collected 2026-09-26 13:05:14 UTC 3,781 bytes, 85 lines download raw bytes

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.