当前位置:首页 > 数据库 > 正文

利用 sendBeacon 发送统计信息

2020-02-13 数据库

我们经常会在网站追踪用户的信息,比如记录用户的停留时间。

window.addEventListener("unload", () => {
  
 // sendHTTP
});

  但是如果发送是XHR请求的话。页面会阻塞。google了发现有一个api是可以支持的

大致是说 navigator.sendBeacon 可以用来发送一些小量的数据,特别适合统计场景,且这个请求是异步的,不受浏览器行为限制:即使浏览器关闭请求也能照样发出。

var data = new FormData();
navigator.sendBeacon(‘path/to/beacon‘, data);

  

window.addEventListener("unload", () => {
    let data = new FormData();
    data.append("type", "event");
    data.append("start_time", start);
    data.append("end_time", getTimestamp());
    data.append("url", currentUrl);
    navigator.sendBeacon("/visit.php", data);
  });

  

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/SQL/15370.html