jshttp
Version:
基于 Axios 的 HTTP 请求库,内置了一些常用功能,支持在任何 Javascript 环境下运行
23 lines (18 loc) • 726 B
JavaScript
const axios = require('axios')
const defaults = require('./defaults')
const coreInterceptor = require('./interceptors/core-interceptor')
const aliyunApigwSignatureInterceptor = require('./interceptors/aliyun-apigw-signature')
const getUrl = require('./core/get-url')
function create(defaultConfig) {
const instance = axios.create(defaultConfig)
instance.interceptors.request.use(aliyunApigwSignatureInterceptor)
instance.interceptors.request.use(coreInterceptor)
instance.getUrl = function instanceGetUrl(config) {
return getUrl(config.baseURL, config.url, config.params)
}
return instance
}
const jshttp = create(defaults)
jshttp.create = create
module.exports = jshttp