axios 的二次封装

本文详细介绍了如何在Node.js环境中创建并配置axios实例,包括根据开发环境切换基础URL,设置超时时间,以及添加请求和响应拦截器来处理token和错误。通过封装axios,实现了对请求状态码的判断,提供了更友好的错误提示。
摘要由CSDN通过智能技术生成
import axios  from "axios";


// 创建 axios 实例
//  切换  开发阶段  和生产阶段的 地址(接口地址)
let baseUrl = '/'
if(process.env.NODE_ENV === 'production'){
  baseUrl = 'localhost:5000'
}else if(process.env.NODE_ENV === 'development'){
  baseUrl = 'localhost:5000'
}


const service=axios.create({
    baseURL:'',
    timeout:3000,     //网络请求超时

});



// 请求拦截器
service.interceptors.request.use((config) => {
    // 让每个请求携带自定义 token
    //  config.headers['Authorization'] = 'token'
    console.log(1111)
    return config
  }, (error) => {
    // 错误抛到业务代码
    return Promise.resolve(error)
  })
 


  

  // 响应拦截器
service.interceptors.response.use((response) => {
         //针对不同的状态码  进行的判断
     if(response.data.code=400){
         return response.data.msg='账号密码错误'
     }

   }, (error) => {
    // 错误抛到业务代码
    error.data.msg = '请求超时或服务器异常,请检查网络或联系管理员!'
    return Promise.resolve(error)
  })

axios封装的好处:

1. token 的携带    还有请求状态码的判断

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值