javaScript

axios -- 9:axios axios库对外暴露的函数

console.info 该系类文章旨在研究 axios 的实现。在研究源码的基础上,去理解 AXISO 是如何实现 AJAX 请求并更好的去使用这个库。 对外暴露的 axios 方法 对应文件为 lib/axios.js 终于写到了最后,这个文件主要是对外保留 axios 方法,主要内容包括实例化 Axios 对象,在此方法下绑定一些公用的方法。 实例化 Axios 对象 对应代码为: function createInstance(defaultConfig)

  • aco
    aco
3 min read
javaScript

axios -- 8:Axios axios的类

console.info 该系类文章旨在研究 axios 的实现。在研究源码的基础上,去理解 AXISO 是如何实现 AJAX 请求并更好的去使用这个库。 Axios axios 中的类 对应文件为 lib/core/Axios.js 根据前面的相关博文,该有的方法都有了,该有的配置也都已经规定好,在 Axios 这个类中,我们只需要绑定配置然后去调用相关的方法就可以了。 类下的属性 function Axios(instanceConfig) { this.defaults = instanceConfig;

  • aco
    aco
2 min read
javaScript

axios -- 7:InterceptorManager 管理注入函数的类

console.info 该系类文章旨在研究 axios 的实现。在研究源码的基础上,去理解 AXISO 是如何实现 AJAX 请求并更好的去使用这个库。 InterceptorManager axios 中管理注入函数的类 对应文件为 lib/core/InterceptorManager.js 这个类主要用于存放如下一个对象: { fulfilled: fulfilled, rejected: rejected } fulfilled:为 promise 执行 then 时的第一个参数; fulfilled:为 promise

  • aco
    aco
1 min read
javaScript

axios -- 6:dispatchRequest 请求发送函数

console.info 该系类文章旨在研究 axios 的实现。在研究源码的基础上,去理解 AXISO 是如何实现 AJAX 请求并更好的去使用这个库。 实现方式及代码 文件 lib/core/dispatchRequest.js 该模块主要实现接受传入的 config 对象并使用该对象下的 adapter 发送请求。 这里的 config 对象可以看作是 defalut + config 的合集。 获取请求头 根据自定义的配置,修改请求头信息 config.data

  • aco
    aco
2 min read
javaScript

axios -- 3:工具函数

console.info 该系类文章旨在研究 axios 的实现。在研究源码的基础上,去理解 AXISO 是如何实现 AJAX 请求并更好的去使用这个库。 工具函数 对应文件为 lib/utils.js 该文件主要定义了一些会在实现 axios 中用到的一些工具函数: 一些关于图片中出现的不常用的属性的解释如下,具体的内容点击即可查看: ArrayBuffer:二进制数据缓冲区 ArrayBufferView:二进制数据视图数组 Blob:二进制数据的基本对象,主要表示文件 FormData:表单数据 URLSearchParams:处理 URL

  • aco
    aco
2 min read
javaScript

axios -- 1:default 默认的配置

console.info 该系类文章旨在研究 axios 的实现。在研究源码的基础上,去理解 AXISO 是如何实现 AJAX 请求并更好的去使用这个库。 default 默认配置信息 对应文件为 lib/defaults.js 该文件主要定义了一个默认的对象:默认的请求内容 一个 js 对象,内容如下: { adapter: FUNCTION // 一个用于触发请求的函数 transformRequest: [FUN, FUN, FUN, FUN ...] // 用于处理请求的函数列表 transformResponse:

  • aco
    aco
1 min read