Config

axios的相关配置参数

InstanceConfig

实例的公共参数配置,用于指定服务的各类公共处理与处理函数,如超时、请求头以及请求数据转换、响应数据转换等。

  • BaseURL 实例中所有请求的基本URL,最终请求的地址将是BaseURL + URL

  • TransformRequest 请求数据的转换处理,针对POSTPATCH以及PUT请求的发送数据转换为字节,默认的transform根据数据类型转换为x-www-form-urlencoded或者json,一般使用中只需要使用默认处理则可。

  • TransformResponse 响应数据的转换处理,默认的响应转换支持解压gzip以及br

  • Headers 添加公共的请求头

  • Timeout 请求响应超时设置

  • Client HTTP请求的Client,如果未指定则使用默认值:http.DefaultClient

  • Adapter 能自定义HTTP请求的处理函数,主要方便各类mock测试场景

  • RequestInterceptors 请求的相关拦截器

  • ResponseInterceptors 响应的相关拦截器

  • EnableTrace 是否启用事件跟踪,包括HTTP请求中的DNS解析、HTTP发送、开始接收数据等事件

  • OnError 当请求出错时回调,可在此处重新对出错封装为自定义出错类型或出错率监控

  • OnDone 请求完成时回调,包括成功或失败的请求,用于HTTP请求的相关性能与出错统计

  • OnBeforeNewRequest 创建新请求时回调,用于在请求前添加一些公共参数等

Config

请求相关的配置参数,其大部分参数与InstanceConfig一致,在请求发送时,会将InstanceConfig的参数与Config中的合并,优先使用Config的参数。

  • Route route参数,如:/users/:type

  • URL 请求的URL

  • Method HTTP请求类型,默认为GET

  • BaseURL 请求的基本URL,一般在实例配置中设置

  • TransformRequest 请求数据的转换处理,一般在实例配置中设置,如果某个请求需要单独处理则再设置此处理函数

  • TransformResponse 响应数据的转换处理,一般在实例配置中设置,如果某个请求需要单独处理则再设置此处理函数

  • Headers 添加请求头,如果实例配置中也有设置,则合并请求头的配置

  • Params 路由中的参数,此参数用于替换url中的:key参数

  • Query 请求的query参数

  • Body 请求的实体数据,用于POSTPUT以及PATCH中。

  • Concurrency 当前实例的并发请求数,此属性每次自动赋值,不需要设置

  • Timeout 请求响应超时设置

  • Context HTTP请求中使用的Context

  • Client HTTP请求的Client,如果未指定则使用默认值:http.DefaultClient

  • Adapter 能自定义HTTP请求的处理函数,主要方便各类mock测试场景

  • RequestInterceptors 请求的相关拦截器

  • ResponseInterceptors 响应的相关拦截器

  • EnableTrace 是否启用事件跟踪,包括HTTP请求中的DNS解析、HTTP发送、开始接收数据等事件

  • OnError 当请求出错时回调,可在此处重新对出错封装为自定义出错类型或出错率监控

  • OnDone 请求完成时回调,包括成功或失败的请求,用于HTTP请求的相关性能与出错统计

  • OnBeforeNewRequest 创建新请求时回调,用于在请求前添加一些公共参数等

  • HTTPTrace 启用trace之后生成的http调用链中的相关记录

Last updated