在鸿蒙OS的arkts的axios中, 怎么取消某个http请求?
本文参与了思否 HarmonyOS 技术问答马拉松,欢迎正在阅读的你也加入。
在鸿蒙OS的arkts的axios中, 怎么取消某个http请求?
本文参与了思否 HarmonyOS 技术问答马拉松,欢迎正在阅读的你也加入。
在鸿蒙OS的arkts的axios中,取消某个http请求可以通过以下步骤实现:
npm install axios
或者
yarn add axios
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
axios.get('/api/data', {
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实例关联的axios请求将被取消,并且可以在catch块中处理取消请求的情况。请注意,取消请求后,请求将不再继续执行,并且会抛出一个Cancel对象,你可以使用axios.isCancel函数来检查抛出的错误是否是取消请求。
斯?为什么我没看到哪里有 controller ?
axios 的话,就参照标准的写法呗,可以在 axios 中定义一个全局的。
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
axios.get('/api/data', {
cancelToken: source.token
})
本文参与了思否 HarmonyOS 技术问答马拉松,欢迎正在阅读的你也加入。
楼主。你好,在发送HTTP请求时,将请求的取消令牌(cancel token)与请求相关联。这个取消令牌可以通过const source = axios.CancelToken.source();
方法来创建。
然后调用取消令牌的source.cancel('请求被取消')
方法。
就是这么so easy!
本文参与了思否 HarmonyOS 技术问答马拉松,欢迎正在阅读的你也加入。
axios封装ets
调用封装接口