使用AbortController来控制fetch请求的终止。
使用AbortController可以中止fetch请求,并在需要时终止它们。当AbortController.abort()被调用时,与该AbortController实例相关联的所有fetch请求都会被中止。
以下是一个使用AbortController中止fetch请求的示例:
const controller = new AbortController();
const signal = controller.signal;
fetch(url, { signal })
.then(response => {
// 处理响应
})
.catch(error => {
if (error.name === 'AbortError') {
console.log('请求已经中止');
} else {
console.error('发生了错误', error);
}
});
// 在需要时中止请求
controller.abort();
上述代码创建了一个AbortController实例,并使用该实例的signal属性来控制fetch请求的终止。在需要时,可以通过调用controller.abort()方法来中止请求。如果请求已经被中止,则会抛出AbortError。