背景与价值页面关闭/切换时常丢失上报;低成本可靠上报保障指标完整与决策有效。sendBeacon 上报function beacon(url: string, data: any) { const blob = new Blob([JSON.stringify(data)], { type: 'application/json' }); return navigator.sendBeacon(url, blob); } window.addEventListener('visibilitychange', () => { if (document.visibilityState === 'hidden') { beacon('/rum', collectMetrics()); } }); fetch keepalive 回退function keepalive(url: string, data: any) { return fetch(url, { method: 'POST', headers: { 'content-type': 'application/json' }, body: JSON.stringify(data), keepalive: true }); } 指标验证(Chrome 128/Edge 130)成功率:关闭场景上报成功 ≥ 99.2%。延迟:上报耗时 ≤ 120ms;不阻塞导航与关闭。影响:对用户体验无可感知影响(INP 无增量)。回退策略不支持 keepalive/sendBeacon 的环境:缩减数据量,提前在事件点上报;或延迟到下次会话。测试清单强制关闭/刷新:数据完整;服务端端到端接收率符合指标。弱网与移动设备切换:成功率稳定,无报错干扰用户。

发表评论 取消回复