当前位置: 首页 > article >正文

axios取消请求

 1.使用CancelToken:

class RequestHttp {
	service: AxiosInstance;
	public constructor(config: AxiosRequestConfig) {
		// 实例化axios
		this.service = axios.create(config);

		/**
		 * @description 请求拦截器
		 * 客户端发送请求 -> [请求拦截器] -> 服务器
		 */
		this.service.interceptors.request.use(
			(config: any) => {
				if (!getUrlParams("id")) {
					config["cancelToken"] = new axios.CancelToken(function (cancel) {
						cancel("当前URL中未携带id参数,请求已被取消");
					});
				}
				return config;
			},
			(error: AxiosError) => {
				return Promise.reject(error);
			}
		);
	}
}

export default new RequestHttp(config);

2.使用AbortController

class RequestHttp {
	service: AxiosInstance;
	public constructor(config: AxiosRequestConfig) {
		// 实例化axios
		this.service = axios.create(config);

		/**
		 * @description 请求拦截器
		 * 客户端发送请求 -> [请求拦截器] -> 服务器
		 */
		this.service.interceptors.request.use(
			(config: any) => {
				if (!getUrlParams("id")) {
					const abortController = new AbortController();
					config.signal = abortController.signal;
					abortController.abort("当前URL中未携带id参数,请求已被取消");
				}
				return config;
			},
			(error: AxiosError) => {
				return Promise.reject(error);
			}
		);
	}
}

export default new RequestHttp(config);


http://www.kler.cn/a/298510.html

相关文章:

  • 蓝桥杯训练
  • QT自定义工具条渐变背景颜色一例
  • STM32烧写失败之Contents mismatch at: 0800005CH (Flash=FFH Required=29H) !
  • 江科大STM32入门——IIC通信笔记总结
  • Python创建GitHub标签的Django管理命令
  • Node.js JXcore 打包教程
  • 【Docker】容器简介和构建镜像
  • 18、Gemini-Pentest-v1
  • Oracle数据库的启动和关闭
  • 【区块链通用服务平台及组件】云链白泽区块链 baas 平台
  • 第142天: 内网安全-权限维持黄金白银票据隐藏账户C2 远控RustDeskGotoHTTP
  • Python-获取excel数据 - 成绩统计
  • Telephony VOLTE配置
  • 高度可定制的电竞鼠标,雷柏VT1 PRO MAX体验
  • ADTEC自动阻抗匹配器维修AMVG-2000-FY AMVG-1000-CD
  • 未来的去中心化网络:Web3与AI的深度融合探讨
  • 【组边际图】:附Origin详细画图流程
  • [笔记]电参数测量的现有方案[进行中...]
  • 分享基于PDF.JS的移动端PDF阅读器代码
  • 二个命令解决docker 拉取镜像超时的问题
  • PDF样本图册转换为一个链接,随时打开无需印刷
  • 元宇宙虚拟展厅是什么?有哪些优势?
  • Qt对话框布局调整
  • 前端程序员_职场生存法则
  • Golang序言全面学习-前序
  • 网络药理学:分子对接之二:PDB数据库的使用(已知PDB ID)、PubChem数据库如果没有3D结构