网页上报埋点用什么函数

在网页上报埋点数据到后端时,由于用户切换页面,经常会丢失数据,在这里介绍一个新函数来解决这个问题。 navigator.sendBeacon() 方法可用于通过 HTTP POST 将少量数据 异步 传输到 Web 服务器。 它主要用于将统计数据发送到 Web 服务器,同时避免了用传统技术(如:XMLHttpRequest)发送分析数据的一些问题。 语法 参数 url url 参数表明 data 将要被发送到的网络地址。 data可选 data 参数是将要发送的 ArrayBuffer、ArrayBufferView、Blob、DOMString、FormData 或 URLSearchParams 类型的数据。 返回值 当用户代理成功把数据加入传输队列时,sendBeacon() 方法将会返回 true,否则返回 false。 描述 这个方法主要用于满足统计和诊断代码的需要,这些代码通常尝试在卸载(unload)文档之前向 Web 服务器发送数据。过早的发送数据可能导致错过收集数据的机会。然而,对于开发者来说保证在文档卸载期间发送数据一直是一个困难。因为用户代理通常会忽略在 unload 事件处理器中产生的异步 XMLHttpRequest。 过去,为了解决这个问题,统计和诊断代码通常要在 上述的所有方法都会迫使用户代理延迟卸载文档,并使得下一个导航出现的更晚。下一个页面对于这种较差的载入表现无能为力。 这就是 sendBeacon() 方法存在的意义。使用 sendBeacon() 方法会使用户代理在有机会时异步地向服务器发送数据,同时不会延迟页面的卸载或影响下一导航的载入性能,这意味着: 数据是通过 HTTP POST 请求发送的。 在会话结束时发送统计数据 网站通常希望在用户完成页面浏览后向服务器发送分析或诊断数据,最可靠的方法是在 visibilitychange 事件发生时发送数据:JS 避免使用 unload 和 beforeunload 过去,许多网站使用 unload 或 beforeunload 事件以在会话结束时发送统计数据。然而这是不可靠的,在许多情况下(尤其是移动设备)浏览器不会产生 unload、beforeunload 或 pagehide 事件。下面列出了一种不触发上述事件的情况: 此外,unload 事件与现代浏览器实现的往返缓存(bfcache)不兼容。在部分浏览器(如:Firefox)通过在 bfcache 中排除包含 unload 事件处理器的页面来解决不兼容问题,但这存在性能损失。其他浏览器,例如 Safari 和 Android 上的 Chrome 浏览器则采取用户在同一标签页下导航至其他页面时不触发 unload 事件的方法来解决不兼容问题。 Firefox 也会在 bfcache 中排除包含 beforeunload 事件处理器的页面。 使用 pagehide 作为回退 可使用 pagehide 事件来代替部分浏览器未实现的 visibilitychange 事件。和 beforeunload 与 unload 事件类似,这一事件不会被可靠地触发(特别是在移动设备上),但它与 bfcache 兼容。 示例 示例代码使用 visibilitychange 事件来调用 sendBeacon() 以发送统计数据。JS

经验收集

从零入门Go语言–搭建linux开发环境

工欲善其事,必先利其器。想要学好 Go 语言,一个稳定的学习环境是非常重要的。特别是对于初学者来说,搭建好开发环境可以帮助他们更快地上手并且避免一些不必要的困扰。而对于 Go 语言这样的新领域来说,第一个实验往往是最难的。即使只是简单地输出一个 hello world,在陌生的环境下也可能会让人感到困惑和挫败。接下来我们介绍 Linux 系统下的搭建方法。通过对比不同系统下搭建开发环境的步骤和注意事项,读者可以更全面地了解如何为自己选择合适的学习平台,并且能够顺利开始学习 Go 语言。

如果你需要在Window上进行安装,请访问这里 从零入门Go语言–搭建windows开发环境

教程

Mac系统上如何信任自签名证书

首先打开你要信任的网站

不同的浏览器会有不同的流程,下面分chrome和safari来分别介绍。

在浏览器地址栏中单击地址左侧的图标,可在弹出的窗口中查看证书
在证书详情页面,您可以导出证书并保存到指定目录

经验收集

从零入门Go语言–搭建windows开发环境

工欲善其事,必先利其器。想要学好 Go 语言,一个稳定的学习环境是非常重要的。特别是对于初学者来说,搭建好开发环境可以帮助他们更快地上手并且避免一些不必要的困扰。而对于 Go 语言这样的新领域来说,第一个实验往往是最难的。即使只是简单地输出一个 hello world,在陌生的环境下也可能会让人感到困惑和挫败。接下来我们首选介绍 Windows 系统下的搭建方法,在后续的教程中还包括 Linux 和 Mac 系统下相应的内容。通过对比不同系统下搭建开发环境的步骤和注意事项,读者可以更全面地了解如何为自己选择合适的学习平台,并且能够顺利开始学习 Go 语言。

如果你需要在Linux上进行安装,请访问这里 从零入门Go语言–搭建linux开发环境

教程

Golang信号处理和优雅退出进程

Linux Server端的应用程序经常会长时间运行,在运行过程中,可能申请了很多系统资源,也可能保存了很多状态,在这些场景下,我们希望进程在退出前,可以释放资源或将当前状态dump到磁盘上或打印一些重要的日志,也就是希望进程优雅退出(exit gracefully)。

经验收集

简单介绍网站入侵以及如何解决

最近手头上的一个网站在投放ads时,被拒登了,并且提示网站可能被入侵,所以开始查找资料,并总结了以下几点,希望对大家有用。当然,如何可能,最好是直接找专业的公司。 检查项目有点多,希望大家在阅读时多点耐心。

经验收集

PHP WebShell 后门脚本与检测工具

在Web开发中,PHP是一种广泛使用的编程语言。然而,由于某些原因,一些开发者可能会在不经意间留下后门,以便日后能够远程控制服务器。这些后门通常被称为“WebShell”。 一、PHP WebShell 简介 PHP WebShell 是一种隐藏在网页中的恶意脚本,它允许攻击者远程控制服务器。攻击者可以通过上传和执行 PHP WebShell 脚本,对服务器进行各种恶意操作,如文件操作、执行系统命令等。 二、常见 PHP WebShell 后门脚本 三、PHP WebShell 检测工具 为了防范 PHP WebShell 攻击,我们需要使用一些检测工具来查找和清除后门脚本。以下是一些常用的 PHP WebShell 检测工具: 四、防范措施

经验收集