axios发送常见请求方式以及拦截器的封装

一,常见请求

javascript 复制代码
//1.get--传递params

            axios.get("/test",{
                params:{
                    
                }
            })

//2.post--传递params

                 axios.post("/test",{},{
                params:{
                    
                }
            })
//3.post--传递body

                  axios.post("/test",{

                     name:""

                      })

二,封装请求拦截器

javascript 复制代码
import axios  from "axios";

const  _axios=axios.create({
    baseURL:"http://localhost:8088",

})

_axios.interceptors.request.use(
    function (config){
        //统一请求添加token
      config.headers={
        Authorization:"wlb-wlb123456"
      }
      return config;
    },
    function  (error){
       return Promise.reject(error)
    }
)

_axios.interceptors.response.use(
    function (config){
      return config;
    },
    function  (error){
       //可以在这里做统一的响应状态判断
       if(error.status===400){
         return Promise.resolve(400)
       }else if(error.status===401){
        //未授权跳转到登录页面
       }
       //如果上边没有处理对应的状态,那么异常还是会抛出给浏览器,所以,可以通过
       //每个状态判断完成以后Promise.resolve(400),告诉浏览器自己已经解决了问题,就不会再抛出去了
       return Promise.reject(error)
    }
)

export default _axios;

请求拦截器可以帮我们做请求携带token,响应拦截器可以帮我们做响应状态判断,做对应的逻辑

相关推荐
qq_39858654几秒前
Utools插件实现Web Bluetooth
前端·javascript·electron·node·web·web bluetooth
李剑一10 分钟前
mitt和bus有什么区别
前端·javascript·vue.js
VisuperviReborn16 分钟前
React Native 与 iOS 原生通信:从理论到实践
前端·react native·前端框架
hashiqimiya23 分钟前
html的input的required
java·前端·html
Mapmost38 分钟前
WebGL三维模型标准(二)模型加载常见问题解决方案
前端
Mapmost40 分钟前
Web端三维模型标准(一):单位与比例、多边形优化
前端
www_stdio1 小时前
JavaScript 执行机制详解:从 V8 引擎到执行上下文
前端·javascript
我命由我123451 小时前
HTML - 换行标签的 3 种写法(<br>、<br/>、<br />)
前端·javascript·css·html·css3·html5·js
暮冬十七1 小时前
[特殊字符] Vue3 项目最佳实践:组件命名、目录结构与类型规范指南
前端·前端架构·vue3项目搭建
F_Director1 小时前
简说Vue3 computed原理
前端·vue.js·面试