首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >如何用 AbortController 取消 fetch 请求并处理竞态问题

如何用 AbortController 取消 fetch 请求并处理竞态问题

作者头像
超哥前端记录
发布于 2026-10-09 09:38:18
发布于 2026-10-09 09:38:18
20
举报
概述
在搜索框输入关键词时,每敲一个字就发一次请求,如果用户打字很快,就会同时存在多个未完成的 fetch。先发出的请求可能后返回,导致页面显示的不是最新关键词的结果。这是典型的请求竞态问题。传统做法是维护一个自增的 requestId,在 then 里比较 id 是否最新,但只解决了结果渲染,没有真正取消网络传输,浪费了带宽和连接。浏览器原生的 AbortController 可以配合 fetch 的

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档