正确的在unload事件中发起请求
总结
在unload与beforeunload事件中我们应当使用Navigator.sendBeacon函数来进行请求的发送,以避免以下问题:
- 异步请求发送很可能失败
- 同步请求导致了页面卸载被延迟
同时,我们应当做兼容性检查,如果浏览器不支持sendBeacon时,可采用同步请求的方式处理
参数
参数是将要发送的
ArrayBufferView或Blob,DOMString或者FormData类型的数据。
JSON参数示例
1 | |
FormData示例
1 | |
其它
如何设置header?
暂未找到设置header的方法,目前的处理是,将token作为参数传递到后台,由后台单独处理
参数大小限制
大约为65536(2^16),不同浏览器不同版本可能不一样
参考资料
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!