首页 > web前端 > js教程 > 正文

如何取消 JavaScript 中的获取请求?

Barbara Streisand
发布: 2024-11-18 01:29:02
原创
129 人浏览过

How Can I Cancel Fetch Requests in JavaScript?

取消获取请求:探索内置机制

JavaScript 的新 fetch() API 提供了一种发出 HTTP 请求的便捷方法。然而,一个长期存在的问题仍然存在:是否有内置机制可以在飞行中取消这些请求?

信号参数

截至 2017 年 9 月, fetch() 支持信号参数。此参数接受 AbortSignal 对象,该对象可以控制提取请求的中止。

实现

要取消提取请求,请按照以下步骤操作:

  1. 创建 AbortController 实例。
  2. 从 AbortController 获取 AbortSignal 对象。
  3. 将 AbortSignal 传递给 signal 参数中的 fetch()。
  4. 需要时,调用controller.abort()来终止请求。

示例

考虑以下代码片段:

// Initialize an AbortController and its AbortSignal
const controller = new AbortController();
const signal = controller.signal;

// Perform a fetch request with the AbortSignal
fetch(urlToFetch, {
  signal,
});

// Abort the request at any time
controller.abort();
登录后复制

浏览器支持

最初,对 AbortSignal 的支持是有限的。然而,截至 2020 年 3 月,大多数主流浏览器(Edge、Firefox、Chrome、Safari、Opera 等)都已实现此功能,使其成为可广泛访问的解决方案。

虽然目前并非所有浏览器都支持 AbortSignal ,它的广泛可用性表明取消运行中的获取请求现在是 JavaScript 开发中的常见功能。

以上是如何取消 JavaScript 中的获取请求?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板