在页面关闭之后未发送完的 AJAX 请求会被取消,如何等待请求发送完呢?
考察说明
考察前端页面生命周期、异步请求处理与页面卸载时保证请求完成的能力
回答思路
- 说明页面关闭时请求被取消的原因
- 能提出使用 navigator.sendBeacon 发送请求
- 能提出使用 fetch keepalive 选项保证请求完成
- 能讨论监听 beforeunload/pagehide/unload 事件触发时机
- 能对比 beacon、keepalive 与同步 XHR 的适用场景和限制
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。