用户点击某按钮进行请求后,此时如果又点取消按钮怎么实现把上一次的请求作废,即不让服务端处理该请求?
本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。
用户点击某按钮进行请求后,此时如果又点取消按钮怎么实现把上一次的请求作废,即不让服务端处理该请求?
本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
前端的请求取消只是对取消的请求后续返回的结果不做处理。并不是通知服务端去终止这个请求。
前端部分的请求取消,可以借助 AbortController 中止控制器 来实现。
当然如果你使用的是
axios
可以直接用axios
提供的signal
属性来取消。Cancellation | Axios Docs具体实现可以借鉴社区已经发布的一些文章:
axios如何取消重复请求
在vue项目中取消axios请求(单个和全局)