UNPKG

h5-cli

Version:

hello

98 lines (90 loc) 5.43 kB
"use strict"; ;(function () { /** \u7528\u4e8e\u5411\u670d\u52a1\u5668\u53d1\u9001\u57cb\u70b9 */ var track = { //\u6bcf\u4e2a\u9875\u9762\u53ea\u8c03\u7528\u4e00\u6b21 sendPV: function sendPV() { var uid = document.cookie.match(/[^u]uid=(\d+)/); //[1]; uid = uid ? uid[1] : undefined; var uuid = document.cookie.match(/uuid=([0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12})/); uuid = uuid ? uuid[1] : undefined; var uuidTime = document.cookie.match(/uuidTime=(\d+)/); //[1]; uuidTime = uuidTime ? uuidTime[1] : undefined; var refererSPM = window.location.search.match(/spm=([\w\.\-\_]+)/); refererSPM = refererSPM ? refererSPM[1] : undefined; var spm = document.querySelectorAll("meta[name=spm-id]"); spm = spm.length ? spm[0].content : undefined; var performance = window.performance.timing; var param = { "spm": spm, "refererSPM": refererSPM, "referer": encodeURIComponent(document.referrer || document.referer || ""), // \u6765\u6e90URL "uid": uid, // \u7528\u6237\u5e73\u53f0\u7528\u6237id "uuid": uuid, "uuidTime": uuidTime, "resolution": window.screen.width + "x" + window.screen.height, "connectEnd": performance.connectEnd, // \u8fde\u63a5\u8bf7\u6c42\u5f00\u59cb\u65f6\u95f4\uff081453187966860\uff09 "connectStart": performance.connectStart, // \u8fde\u63a5\u8bf7\u6c42\u7ed3\u675f\u65f6\u95f4\uff081453187966825\uff09 "domComplete": performance.domComplete, // DOM\u5b8c\u6210\u65f6\u95f4(1453187967516) "domContentLoadedEventEnd": performance.domContentLoadedEventEnd, // DOM\u4e8b\u4ef6\u5b8c\u6210\u65f6\u95f4(1453187967374) "domContentLoadedEventStart": performance.domContentLoadedEventStart, // DOM\u65f6\u95f4\u5f00\u59cb\u65f6\u95f4\uff081453187967283\uff09 "domInteractive": performance.domInteractive, // DOM Ready\u65f6\u95f4\uff081453187967283\uff09 "domLoading": performance.domLoading, // DOM loading\u72b6\u6001\u65f6\u95f4(1453187966969 ) "domainLookupEnd": performance.domainLookupEnd, // DNS\u67e5\u8be2\u7ed3\u675f\u65f6\u95f4 \uff081453187966825\uff09 "domainLookupStart": performance.domainLookupStart, // DNS\u67e5\u8be2\u5f00\u59cb\u65f6\u95f41453187966825 "fetchStart": performance.fetchStart, // fetchStart\u7f13\u5b58\u68c0\u67e5\uff081453187966487\uff09 "loadEventEnd": performance.loadEventEnd, // \u6587\u6863onload\u7ed3\u675f\uff081453187967516\uff09 "loadEventStart": performance.loadEventStart, // \u6587\u6863onload\u5f00\u59cb 1453187967516 "navigationStart": performance.navigationStart, // \u6d4f\u89c8\u5668\u5f00\u59cb\u65f6\u95f4\uff081453187966487\uff09 "redirectEnd": performance.redirectEnd, // \u91cd\u5b9a\u5411\u7ed3\u675f 0 "redirectStart": performance.redirectStart, // \u91cd\u5b9a\u5411\u5f00\u59cb 0 "requestStart": performance.requestStart, // \u6587\u6863\u8bf7\u6c42\u5f00\u59cb\u7684\u65f6\u95f4 1453187966860 "responseEnd": performance.responseEnd, // \u6570\u636e\u63a5\u6536\u7ed3\u675f\u7684\u65f6\u95f4 1453187967004 "responseStart": performance.responseStart, // \u6570\u636e\u63a5\u6536\u5f00\u59cb\u65f6\u95f4 1453187966962 "secureConnectionStart": performance.secureConnectionStart, // SSL\u63e1\u624b\u65f6\u95f4 0 "unloadEventEnd": performance.unloadEventEnd, // \u524d\u4e00\u4e2a\u9875\u9762\u7684\u5378\u8f7d\u7ed3\u675f 0 "unloadEventStart": performance.unloadEventStart // \u524d\u4e00\u4e2a\u9875\u9762\u7684\u5378\u8f7d\u5f00\u59cb0 }; // console.log( param ); // http://192.168.31.187:3000/ var url = window.config.trackUrl; var paramStr = ""; var xhr = new XMLHttpRequest(); for (var key in param) { if (param[key] != undefined) { paramStr += key + "=" + param[key] + "&"; } } url += paramStr; xhr.open("GET", url, true); xhr.withCredentials = true; xhr.onload = function () { if (xhr.responseText) { var ck = JSON.parse(xhr.responseText); if (ck.uuid) { document.cookie = "uuid=" + ck.uuid + ";path='/';expires=" + ck.expires; } if (ck.uuidTime) { document.cookie = "uuidTime=" + ck.uuidTime + ";path='/';expires=" + ck.expires; } } }; xhr.send(); } }; window.addEventListener("load", function () { track.sendPV(); }); if (typeof define === 'function') { // AMD. Register as an anonymous module. define("track", function () { return track; }); } else if (typeof module !== 'undefined' && module.exports) { module.exports = track; } else { window.track = track; } })();