电商大数据分析平台(二)js sdk的编写

本文介绍了电商大数据分析平台中的JS SDK编写,主要用于获取用户浏览器cookie信息并发送到服务器。当用户访问页面时,SDK会检查session是否过期,根据情况发送pageView或launch事件。主要涉及CookieUtils、tracker模块,包括startSession、createNewSession等关键方法,以及autoload自动加载机制。
摘要由CSDN通过智能技术生成

一、简介

编写一个js的sdk,用以嵌入待分析的页面中,当用户访问到该页面上时,自动调用该段js代码,获取用户浏览器上的cookie信息,拼装成一段session信息,发送到我的nginx服务器上。

二、执行流程

如图,用户访问页面时,首先判断用户的会话是否过期,未过期则调用pageView方法发送到nginx服务器,若过期,则判断是否第一次访问,是则创建用户标识并创建对话发送launch事件,不是则直接创建session发送pageView事件。

三、代码分析

1.CookieUtils

用于处理用户cookie信息,主要有get,set两个方法,set用于更新cookie,get用于获取cookie串中的所需值。

var CookieUtil={
		get:function(name){
			var cookieName = encodeURIComponent(name)+"=";
				cookieStart = document.cookie.indexOf(cookieName);//找出cookie起始位置
				cookieValue = null;
			if(cookieStart>-1){
				var cookieEnd = document.cookie.indexOf(";",cookieStart);//找出cookie结束位置
				if(cookieEnd==-1){
					cookieEnd = document.cookie.length;
				}
			}
			cookieValue = decodeURIComponent(document.cookie.substring(cookieStart+cookieName.length, cookieEnd));
			return cookieValue;//返回value值
		},
		set:function(name,value,expires,path,domain,secure){
			var cookieText = encodeURIComponent(name)+"="+encodeURIComponent(value);
			
			if(expires){
				var expiresTime = new Date();
				expiresTime.setTime(expires);//设置过期时间
				cookieText += ";expires=" + expiresTime.toUTCString();
			}
			
			if(path){
				cookieText += ";path=" + path;
			}
			
			if(domain){
				cookieText += ";domain=" + domain;
			}
			
			if(path){
				cookieText +&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值