axios取消请求
为什么会有取消请求-文件上传
比如有这样的场景,在一个弹窗中有文件上传。
当用户进行文件上传的时候,发现不想进行文件上传了,又点击了弹窗中的取消。
那么是不是应该去取消本次的上传操作,此时就需要使用取消xiaos请求了。
使用axios内部提供的 CancelToken方法来取消请求
<template>
<div>
<button @click="sendAxios">发送axios</button>
<button @click="cancelHandert">取消请求</button>
<button @click="sendAxios2">发送axios@2</button>
</div>
</template>
<script lang="ts" setup>
import axios from 'axios'
function sendAxios() {
SendGiveServe()
}
let CancelToken;
let source:any;
function SendGiveServe() {
CancelToken = axios.CancelToken
source = CancelToken.source()
axios.get('https://xxx.com/list',{name:'张三'}, {
cancelToken: source.token
}).then(function (response) {
console.log('返回来的数据1', response)
}).catch(thrown => {
if (axios.isCancel(thrown)) {
console.log('请求已经取消了==>', thrown.message);
} else {
// 处理错误
}
});
}
function cancelHandert() {
source&&source.cancel('取消请求1') //取消请求,参数可选
}
function sendAxios2() {
axios.get('https://xxx.com/list').then(function (response) {
console.log('返回来的数据sendAxios2', response)
})
}
</script>

通过调用 CancelToken的构造函数来创建 CancelToKen
<template>
<div>
<button @click="sendAxios">发送axios1</button>
<button @click="cancelHandert">取消请求axios1</button>
<button @click="sendAxios2">发送axios@2</button>
</div>
</template>
<script lang="ts" setup>
import axios from 'axios'
let CancelToken; //取消请求的token令牌
let cancel:any; //取消请求的方法
// 发送请求
function sendAxios() {
CancelToken = axios.CancelToken
axios.get('https://edu.newsight.cn/wxList.php', {
cancelToken: new CancelToken(function excutor(c) {
cancel = c;
})
}).then((res) => {
console.log('axios1发回来的数据',res)
}).catch((thrown) => {
if (axios.isCancel(thrown)) {
console.log('请求已经取消了==>', thrown.message);
} else {
// 处理错误
}
});
}
// 取消请求
function cancelHandert() {
cancel&&cancel();
}
function sendAxios2() {
axios.get('https://edu.newsight.cn/wxList.php').then(function (response) {
console.log('返回来的数据sendAxios2', response)
})
}
</script>

取消axios请求的特别说明
虽然我们点击取消请求了。后端还是会一一收到所有的请求。
因此该查库的查库,该创建的创建,还是会操作对应的业务逻辑。
上面这一段话的来源:链接:https://juejin.cn/post/6931588940076072968
有的小伙伴可能就会说:那取消请求有什么意义呢?
其实他的作用主要是:减少数据的重复渲染。对前端有用,对于后端是没有什么用的。
回到最初:文件上传的场景,虽然前端取消了,但是后端仍然会读取这个文件上传的操作。
听到我说这一段话:也许你会崩溃。但是确实这这样的。本宝宝我也很难受
axios取消请求的更多相关文章
- axios 取消请求的方法
开发中遇到需要取消请求的功能,,点击终止查询可以取消开始查询请求,再次点击开始查询又可以进行查询. 解决方法:axios官方文档上的CancelToken,一开始用了这个api后,可以成功取消请求,但 ...
- axios 取消请求
解决思路 在发送第二次请求的时候如果第一次请求还未返回,则取消第一次请求,以保证后发送的请求返回的数据不会被先发送的请求覆盖. axios官方文档取消请求说明 方法一: const CancelTok ...
- axios 取消请求 (如:用户登录失效,阻止其他请求)
const CancelToken = axios.CancelToken; const source = CancelToken.source(); axios.interceptors.reque ...
- axios取消接口请求
axios取消请求 这里就是分析一下接口请求需要被取消时的一些操作 因为我是用vue写的项目,所以标配用的是axios,怎么在axios中取消已经发送的请求呢? 1.在这之前我们还是先介绍一下原生js ...
- jq和axios的取消请求
场景: 分页: 每次点击分页会发送请求,如果上一次请求还未获取到,下一次请求已经开始且先一步获取到,那么数据上会出现问题. 快速点击会发送多次请求,多次点击的时候一般的做法我们会定义一个flag,此时 ...
- Axios 取消 Ajax 请求
Axios 取消 Ajax 请求 Axios XMLHttpRequest https://caniuse.com/?search=XMLHttpRequest https://developer.m ...
- 学习axios必知必会(2)~axios基本使用、使用axios前必知细节、axios和实例对象区别、拦截器、取消请求
一.axios的基本使用: ✿ 使用axios前必知细节: 1.axios 函数对象(可以作为axios(config)函数使用去发送请求,也可以作为对象调用方法axios.request(confi ...
- axios取消重复请求与更新token并续订上次请求
一.问题引入 当用户发起一个请求时,判断token是否已过期,若已过期则先调refreshToken接口,拿到新的token后再继续执行之前的请求. 难点:当同时发起多个请求,token 过期会调用多 ...
- vue2.0项目实战(3)使用axios发送请求
在Vue1.0的时候有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource. 关于为什么放弃推荐? -> 尤 ...
- Vue笔记:使用 axios 发送请求
在Vue1.0的时候有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource. 关于为什么放弃推荐? -> 尤 ...
随机推荐
- 物联网设备上云难?华为云IoT帮你一键完成模型定义,快速在线调试设备
摘要:在不到3分钟的操作里,不仅完成了一款智慧烟感设备在云端的模型定义,还通过在线调试了解到了设备和远端通信的过程. 本文分享自华为云社区<物联网设备上云难?华为云IoT帮你一键完成模型定义,快 ...
- STM32+华为云IoTDA,带你设计一个属于自己的动态密码锁
摘要:设计一款物联网智能电子密码锁,以STM32单片机为主控制器,由触摸矩阵键盘.ESP8266.步进电机等模块组成,具有远程控制.随机密码生成等功能. 本文分享自华为云社区<STM32+华为云 ...
- nodejs升级到最新LTS版本方法汇总:linux/mac/window—npm/yum/ssh
nodejs不同版本的差异还是蛮多的,比如obj?.a 在nodejs12是不支持的,必须得升级到14才可以.但是centos yum 默认安装的,或者系统集成的nodejs版本都是很老的.项目上传到 ...
- 单日30PB量级!火山引擎ByteHouse云原生的数据导入这么做
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 近期,火山引擎ByteHouse技术专家受邀参加DataFunCon2023(深圳站)活动,并以"火 ...
- Solon Aop 特色开发(4)Bean 扫描的三种方式
Solon,更小.更快.更自由!本系列专门介绍Solon Aop方面的特色: <Solon Aop 特色开发(1)注入或手动获取配置> <Solon Aop 特色开发(2)注入或手动 ...
- 叫板GPT-4的Gemini,我做了一个聊天网页,可图片输入,附教程
先看效果: 简介 Gemini 是谷歌研发的最新一代大语言模型,目前有三个版本,被称为中杯.大杯.超大杯,Gemini Ultra 号称可与GPT-4一较高低: Gemini Nano(预览访问) 为 ...
- 什么是「滑动窗口算法」(sliding window algorithm),有哪些应用场景?
今天是算法数据结构专题的第2篇文章,我们一起来学习一下「滑动窗口算法」. 前言 最近刷到leetCode里面的一道算法题,里面有涉及到Sliding windowing算法,因此写一篇文章稍微总结一下 ...
- POJ 1011 Sticks (DFS + 剪枝)
题目地址:http://poj.org/problem?id=1011 题目大意 给出n个小木棒,组合成若干长度最短棍子 解题思路 首先将木棒从大到小排序 dfs(k, l), k是还剩多少木棒没用, ...
- POJ - 2259 Team Queue (队列)
题目链接 https://vjudge.net/problem/POJ-2259 题解 在任何时刻,同一个小组的人只要来到了队伍,就会站在一起,所以我们建立一个队列q0存储队伍中所有小组的编号,再为每 ...
- 云原生 Serverless Database 使用体验
作者 | 李欣 近十年来互联网技术得到了飞速的发展,越来越多的行业加入到了互联网的矩阵,由此带来了更为丰富且复杂的业务场景需求,这对于数据应用系统的性能无疑是巨大的挑战. 关系型数据库 MySQL ...