如何在若依框架中封装axios

若依框架使用axios作为其默认的http请求库,并提供了一套简单易用的封装方案,方便开发者快速构建前后端分离的应用程序。若依提供的axios封装方案支持拦截器、全局配置、请求/响应拦截等常见的功能,使用起来十分方便。

若您需要自定义封装方案,可以通过自定义Axios实例来实现。在自定义Axios实例时,我们可以设置一些通用的请求头、拦截器等配置,方便多个请求模块之间共享。

以下是自定义Axios实例的示例代码:

import axios from 'axios'

const service = axios.create({
  baseURL: process.env.BASE_API, // api 的 base_url
  timeout: 5000, // 请求超时时间
  headers: {
    'Content-Type': 'application/json;charset=UTF-8'
  }
})

service.interceptors.request.use(
  config => {
    // 在发送请求之前做些什么
    return config
  },
  error => {
    // 对请求错误做些什么
    console.log(error) // for debug
    Promise.reject(error)
  }
)

service.interceptors.response.use(
  response => {
    // 对响应数据做点什么
    return response.data
  },
  error => {
    // 对响应错误做点什么
    console.log('err' + error) // for debug
    return Promise.reject(error)
  }
)

export default service

希望对您有所帮助!

md 文件大小:2.09KB