Axios中的取消请求源码解析
前言 在开发中,为了活动动态数据,因此我们需要与后台通过请求进行交互,获取动态数据来展现给用户看。有些一些网站对实时信息要求还更高,比如股票类、聊天类、直播类等。本章内容涉及思想层面东西比较多,如果出现知识盲点无所谓,主要就是体会Promise的运用思想!思想!思想!(小白也可以试试) 当下流行的http库 http库在当下作为请求交互来说,是比较主流的,今天就给大家介绍一个比较受欢迎的库:Axios 它在github上的star数截至到2020年3月已经达到70.2k,这算是比较多的了 今天讲什么 由于Axios是基于Promise的,有些操作如果更多的触碰到底层promise,代码上不免会让大家比较蒙,本文主要不是为了科普Axios的基本代码(因为官网上中文的、英文的多了去了)。 今天就给大家说一下,比较难懂的代码:cancelToken,他是怎么利用Promise跑起来的以及一些设计思路,不管你会不会这个库,都可以尝试理解一下源码的设计思路。 取消请求 先说一下,有时我们上传一个文件到服务器的时候,文件很大,不可能一下传完,但是我们中途发现文件错了,因此我们点击取消,即为:取消请求。 在Axios中的代码如下: // 创建取消令牌的生成器对象 const CancelToken = axios.CancelToken; // 从中获取令牌对象 const source =