跳到主要内容

ajax

2024年04月24日
柏拉文
越努力,越幸运

一、认识


因为埋点实际上是对关键节点的数据进行上报是和服务端交互的一个过程,所以我们可以和后端约定一个接口通过ajax去进行数据上报。

二、特点


一般而言,埋点域名并不是当前域名,因此请求会存在跨域风险,且如果ajax配置不正确可能会浏览器拦截。因此使用ajax这类请求并不是万全之策。

三、上报


function buryingPointByAjax(type) {
return new Promise((resolve, reject) => {
const ajax = new XMLHttpRequest();
const url = "/server/buryingPoint/ajax";
ajax.open("post", url, true);

ajax.addEventListener("readystatechange", function () {
if (ajax.readyState === 4 && [200, 304].includes(ajax.status)) {
const { response } = ajax;
console.log(response);
}
});

const params = JSON.stringify({
type,
device: "pc",
url: "ajax",
});
ajax.send(params);
});
}