AbortController取消Fetch请求和XMLHttpRequest

这个是一个实验性接口,注意兼容性。
使用过 fetch 请求数据时,如果一定时间未请求完成,可以使用 AbsortController 在前端取消该请求。

function isPrime(number, timeout = 2000) {
  const controller = new AbortController()
  // 调用其 absort 方法取消请求
  setTimeout(() => controller.abort(), timeout)
  // 调用由远程某个接口
  // 注意这里 fetch 传入的options
  fetch(`http://localhost:8081/isprime?number=${number}`, { signal: controller.signal })
    .then(res => res.json())
    .then(console.log)
    .catch(console.error)
}

还有应用场景是取消下载什么的,可以根据自己的需要使用。

参考链接:

相关文章:

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容