javascript - 为什么在不提供响应时使用信标 api
问题描述
我正在使用 navigator.sendBeacon() api,我了解它在 onunload 时发送数据的好处,但是当它只返回数据是否正在排队的值并且无助于我们检查是否数据成功发送到服务器端。有人可以帮助我理解这一点并提供一个解决方案来检查数据是否已成功发送到服务器。
解决方案
关键是当您无论如何都不能等待响应sendBeacon
时发送数据(例如当浏览器离开您的站点并且您想要将分析数据发送到您的数据库时)。
没有办法从中获得成功或失败状态,因为它是为您的 JS 程序退出(并且无法阻止退出)的情况而设计的。
推荐阅读
- java - 带有自定义父 POM 的 Spring Boot Thin Jar
- javascript - 导航仪经纬度
- docker - Jenkinsfile Dockerfile 绑定卷 pwd
- docker - 从 Dockerfile 构建并获得“无法验证以下签名,因为公钥不可用:NO_PUBKEY”
- php - 如何删除只有一种变体的可变产品的价格范围?
- c++ - 仅访问受保护成员的朋友类 C++
- cucumber - 尝试将 Cucumber 测试导入 XRAY 时无法解析特征文件中的描述
- javascript - JSDoc 一个对象,无论名称如何,所有属性都获得相同的类型
- elasticsearch - Elasticsearch curator 删除整个索引而不是旧文档
- c++ - 为什么 C++ 不尝试使用第二个模板重载?