离开页面时的ajax埋点

作者: 李霖弢 | 来源:发表于2020-06-02 14:55 被阅读0次

1. 监听页面离开

页面离开包括跳转到新页面和关闭页面

beforeunload

在unload之前触发,可用于阻塞页面退出(Chrome不支持自定义文案)

  window.onbeforeunload = function (e) {
    var e = e || window.event,
      dialogText = '页面还未保存,确定要离开吗?';//该自定义内容仅在老版本浏览器中有效
    if (e) {
      e.returnValue = dialogText;
    };
    return dialogText;
  };
pagehide

不同浏览器内表现形式不同,在微信等应用内仅有pagehide而无beforeunload事件

2. 离开时调用接口

直接调用异步ajax

无法完成三次握手,接口会被cancel
可以通过服务器端配置ignore_user_abort防止接口cancel

调用同步ajax

例如jquery的ajax配置async:false即可,但由于阻塞页面关闭或跳转,2019年底开始Chrome已不再支持

通过图片src(未测试)

创建img并将其src设为待请求的get链接,本质上同调用同步ajax

navigator.sendBeacon

专用于离开页面时埋点,会发起一个POST类型的HTTP请求,data可以为字符串或FormData,也可以不传data直接在url中拼接query

window.addEventListener("pagehide", function () {
  navigator.sendBeacon(url,data);
});
使用websocket等长连接方式

相关文章

  • 离开页面时的ajax埋点

    1. 监听页面离开 页面离开包括跳转到新页面和关闭页面 beforeunload 在unload之前触发,可用于阻...

  • 页面埋点统计

    页面埋点的事件比较多 只做了一个时间埋点 .h里 .m里 //进入页面所有的操作 //进入页面的时间 //离开页面...

  • 网站埋点,在页面离开时掉接口提交页面信息

    问题描述:今天接到个之前没处理过的需求,就是给网站的所有页面做埋点,在页面离开的时候讲此页面的编码和页面中点击了哪...

  • 友盟数据埋点前,你要知道这些

    一、数据埋点具体应用 1、统计路径 一般APP所有页面都会进行埋点,埋点后友盟会统计用户在页面上的访问路径,通过访...

  • 2018年10月18日.NET笔试面试题

    AJAX 解决什么问题? AJAX 解决的问题就是“无刷新更新页面”,用传统的 HTML 表单方式进行页面的更新时...

  • 关于项目中埋点的总结和思路

    项目中的埋点怎么做的? 埋点:就是需要统计页面打开或者控件点击次数的方式。借助友盟等平台。分手动埋点、自动埋点两种...

  • 为什么需要数据埋点?

    一、什么是埋点? 数据埋点我们可以分成:页面统计、行为统计、用户属性统计等。 页面统计可以帮我们知晓某个页面被多少...

  • 2020-02-26 如何设计数据埋点

    案例:对活动入口的点击量进行埋点统计? 三种简单的前端埋点事件 曝光事件:记录页面被浏览次数,记录页面流量所用。 ...

  • iOS开发之优秀三方库

    切面埋点 Aspects Aspects 广告页面库 XHLaunchAd

  • 关于埋点文档的一点总结

    一. 埋点的目的 埋点就是在用户使用产品时记录下用户行为数据,以便后面对用户行为进行数据分析。比如说需要页面的浏览...

网友评论

    本文标题:离开页面时的ajax埋点

    本文链接:https://www.haomeiwen.com/subject/sfjuzhtx.html