【发布时间】:2021-06-24 18:05:50
【问题描述】:
在我们的应用程序中,我们使用fetch 访问中间件,而中间件又使用axios 调用后端API。我制作了一个搜索栏,我想在每次按键时调用 API 调用。我想在发生新按键时取消正在进行的请求。我想知道,我应该在哪里编写取消飞行中请求的逻辑?在客户端还是在中间件中,为什么?
【问题讨论】:
-
与其取消,不如使用debounce函数?
-
@Yousaf - 应该同时使用。
-
@Yousaf 即使使用 debounce,我也需要取消正在进行的请求,因为 API 需要一些时间才能返回结果。
-
要取消使用
fetch发出的请求,请查看 AbortController -
我会在发起请求的一方 - 客户端执行此操作。原因是发起请求的一方应该控制是否取消请求。
标签: javascript node.js axios fetch middleware