Navigator.sendBeacon()

简介: Navigator.sendBeacon()

合集 - WEB API(1)

1.Navigator.sendBeacon()04-19

收起

navigator.sendBeacon() 方法可用于通过 HTTP POST 将少量数据异步传输到 Web 服务器。

这个方法主要用于满足统计和诊断代码的需要,这些代码通常尝试在卸载(unload)文档之前向 Web 服务器发送数据。过早的发送数据可能导致错过收集数据的机会。然而,对于开发者来说保证在文档卸载期间发送。

它主要用于将统计数据发送到 Web 服务器,同时避免了用传统技术(如:XMLHttpRequest)发送分析数据的一些问题。

语法

navigator.sendBeacon(url);
navigator.sendBeacon(url, data);

参数

返回值

当用户代理成功把数据加入传输队列时,sendBeacon() 方法将会返回 true,否则返回 false

特点

  • 数据发送是可靠的
  • 数据传输是异步的
  • 不影响下一次导航的载入

示例

示例代码使用 visibilitychange 事件来调用 sendBeacon() 以发送统计数据。

document.addEventListener('visibilitychange', function logData() {
  if (document.visibilityState === 'hidden') {
    navigator.sendBeacon('/log', analyticsData);
  }
});

浏览器兼容性


相关文章
|
PHP 开发工具 对象存储
PHP 使用 OSS上传文件
PHP 使用 OSS上传文件
5713 0
|
Java 测试技术 Apache
Mac 下安装压力测试工具JMeter
Mac 下安装压力测试工具JMeter
710 0
|
IDE Linux 开发工具
Linux系统、版本、CPU、内存查看、硬盘空间
*查看系统版本:lsb_release -a [root@localhost /]# lsb_release -a *查看内核版本:uname -a *查看cpu型号:cat /proc/cpuinfo [root@localhost /]# cat ...
5090 0
|
人工智能
【MCP教程系列】阿里云百炼xChatPPT,5分钟轻松搞定PPT
通过阿里云百炼平台结合ChatPPT,只需简单四步即可快速生成专业PPT。
2366 0
|
11月前
|
移动开发 API UED
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
话说多模态大模型
多模态大模型是近年来人工智能的重要进展,能够处理和理解多种数据类型,如文本、图像、音频和视频。通过结合不同模态的信息,这些模型在图像识别、视觉问答、多模态检索和情感分析等场景中展现出强大的应用潜力。然而,数据标注、模态间协调和计算资源仍是其面临的挑战。未来研究将致力于提高模型效率和解释能力。
652 3
|
11月前
|
监控 安全 JavaScript
Web安全-ReDos正则表达式的拒绝服务攻击
Web安全-ReDos正则表达式的拒绝服务攻击
371 0
|
前端开发
CSS Reset或Normalize.css
CSS Reset或Normalize.css
|
API Java
解决HTTP 400 Bad Request错误的方法
解决HTTP 400 Bad Request错误的方法
5530 0
|
存储 JavaScript 前端开发
Node 中的 AsyncLocalStorage 的前世今生和未来(一)
作者系统详实的介绍了什么是AsyncLocalStorage、如何使用、Node 是如何实现的 AsyncHook等。不论你是0基础还是对此API有些了解的读者都比较适合阅读此文。(文末有活动)