axios取消请求操作(适用于上传文件)

27 篇文章 0 订阅
本文介绍了如何使用axios的CancelToken取消请求,包括创建令牌、获取源对象、发送请求并设置取消操作,重点展示了在文件上传场景中的应用,以及在Element UI的el-upload组件中的自定义实现。
摘要由CSDN通过智能技术生成
	axios取消请求操作
	1. 创建取消令牌的生成器对象
	 	const CancelToken = axios.CancelToken;
    2.从中获取令牌对象
      	const source = CancelToken.source();
    3.发送请求的时候
    	axios({
    	 url:'https:baidu.com',
    	 method:'post',
    	 cancelToken:source.token
		})
		setTimeout(()=>{
			source.cancel('取消请求')
		},2000)
	4.使用场景,一般适用于上传文件等(上传文件的时候发现文件错误(文件比较大),需要中途取消)
	4.1 框架element中el-upload
	自定义请求覆盖之前框架中自带的请求方式 :http-request="uploadFile"
	 uploadFile(params){
      let file = params.file
      let formData = new FormData();
	  formData.append('file', params.file)
      axios({
        url:'/api/file/main/preUpload',
        data:formData ,
        method: "post",
        cancelToken: source.token,
        onUploadProgress: event => { //axios中自带获取文件上传进度条回调
			file.percent = parseInt(event.loaded/event.total*100) //获取文件上传进度条的值
			params.onProgress(file) 
		}
      }).then(res=>{
        params.onSuccess(res.data)
      })
    },
也可以参考这个博主的
https://blog.csdn.net/qq_56018649/article/details/120179089?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-1.queryctr&spm=1001.2101.3001.4242.2&utm_relevant_index=3		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值