axios - 1 - 默认配置

介绍 default 的默认配置信息。

console.info

该系类文章旨在研究 axios 的实现 。在研究源码的基础上,去理解 axios 是如何实现 ajax 请求并更好的去使用这个库。

default 默认配置信息

对应文件为 lib/defaults.js

该文件主要定义了一个对象,该对象用于配置默认的参数信息,在初始化时,会与传入的参数进行合并。

defaults 包含的主要内容
defaults 包含的主要内容

详细内容如下:

{
    adapter:           (config: object) => Promise           // 一个用于触发请求的函数
    transformRequest:  Array<(data: object, header:object) => object>  // 用于处理请求的函数列表
    transformResponse: Array<(data: object) => object>       // 用于处理响应的函数列表
    timeout:           number                                // 请求超时时间
    xsrfCookieName:    string                                // 用于防止跨站攻击
    xsrfHeaderName:    string                                // 用于防止跨站攻击
    maxContentLength:  number                                // 内容的大小限制 -1 为不限制大小
    validateStatus:    (status: number) => boolean           // 用于判断当前请求是否为有效请求
    headers:{
        common:        object                                // 通用头信息
        delete:        object                                // delete 的通用头信息
        get:           object                                // get 的通用的头信息
        head:          object                                // head 的通用的头信息
        post:          object                                // post 的通用的头信息
        put:           object                                // put 的通用的头信息
        patch:         object                                // patch 的通用的头信息
    }
}

默认的请求信息一般不用修改,当一个请求真正发出前,程序会将 default 和传入的 config 进行合并,当有重复时, config 中的内容会覆盖默认的 default

Read more

Gitlab 搭建

Gitlab 搭建

为什么? 想要自己搭建一个代码仓库无非是以下几点原因: 1. 公司内部项目 2. 自己的项目,但不适合在公网 3. 大部分的 git 仓库虽然有私有服务,但价格都不便宜,甚至不如一台云服务器来的便宜 配置及安装文档 Gitlab * 由于 gitlab 会用到 22 端口端口转发的化就走不了 git clone 的默认配置,且占用内存较高,不推荐使用 docker 进行部署; * 由于 gitlab 自带 nginx 默认情况下会与属主机的 nginx 冲突,因此推荐只使用 gitlab 自带的 nginx 进行端口转发; 最小化配置 # path /etc/gitlab/gitlab.rb external_url 'http://git.

By breeze
NPM 私服

NPM 私服

verdaccio 私服搭建,搭建过程中的一些问题以及解决: * docker compose 启动后,可能会报错:配置找不到,添加 config.yaml 文件到映射的 ./conf 目录即可,config.yaml 具体内容可在官网找到,下方也有最小化配置。 services: verdaccio: image: verdaccio/verdaccio container_name: 'verdaccio' networks: - node-network environment: - VERDACCIO_PORT=4873 - VERDACCIO_PUBLIC_URL=http://npm.demo.com ports: - '10001:4873'

By breeze