CancelToken
是一个用于取消请求的机制。它允许在请求还未完成时,通过取消请求来终止请求的发送。这在需要在某些情况下中止正在进行的请求时非常有用,比如文件上传时取消上传等。
以下是使用 CancelToken
的一般步骤:
- 首先,导入 Axios 库和相关的依赖:
import axios from 'axios';
- 创建一个
CancelToken
对象:
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
- 发送请求时,将
cancelToken
设置为配置对象的一部分:
axios.get('/your-api-endpoint', {cancelToken: source.token
})
.then(response => {// 处理响应数据
})
.catch(error => {if (axios.isCancel(error)) {console.log('请求被取消:', error.message);} else {// 处理其他错误}
});
- 如果需要取消请求,调用
source.cancel()
方法:
source.cancel('请求被用户取消');
这将触发请求被取消的逻辑,在 .catch
代码块中处理。
注意:为每个请求都创建一个新的 CancelToken
对象是很重要的,这样可以确保能够精确地取消特定的请求。
这就是在 Axios 中使用 CancelToken
的基本步骤。通过这个机制,可以更好地控制请求并在需要时进行取消。