Axios 取消请求
warning:
这篇文章距离上次修改已过466天,其中的内容可能已经有所变动。
在Axios中,可以使用CancelToken来取消请求。CancelToken是一个生成令牌的函数,你可以调用它来获取一个cancel方法和一个promise。你可以在任何时候调用cancel方法,它将会中断所有带有这个令牌的请求。
下面是如何使用CancelToken取消请求的例子:
import axios from 'axios';
// 创建一个取消令牌源(cancel token source)
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
// 发起请求
axios.get('/some-endpoint', {
cancelToken: source.token
}).catch(function(thrown) {
if (axios.isCancel(thrown)) {
console.log('Request canceled', thrown.message);
} else {
// 处理错误
}
});
// 取消请求
source.cancel('Operation canceled by the user.');在这个例子中,我们首先通过CancelToken.source()创建了一个取消令牌源。然后在发起请求时,我们通过cancelToken选项将令牌传递给请求。最后,如果需要取消请求,我们调用source.cancel()方法,它将会引发一个取消错误,你可以在catch块中捕获这个错误来处理请求的取消。
评论已关闭