简易封装的axios

Posted superclound

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简易封装的axios相关的知识,希望对你有一定的参考价值。

import axios from "axios";
import qs from "qs";
const server = axios.create(
//baseURL:‘‘,
timeout:5000,
withCredentials:true
)

//请求的拦截器
server.interceptors.request.use(config=>
if(config.method == "get")
//将数据传递给params
config.params = ...config.data;
else if(config.method == "post")
// 对config序列化做个兼容
// config.headers["content-type"] = "application/x-www-form-urlencoded" //数据序列化 将post提交的值按照这种类似的结果传输key=val&key=val
//config.data = qs.stringify(config.data);

//将处理好的处理给了服务器
return config;
,(err)=>
Promise.reject(err);
)


//响应的拦截
server.interceptors.response.use(res=>
if(res.statusText =="OK")//当res.statusText =="OK"时拦截data,只返回data
return res.data;

,(err)=>
Promise.reject(err);
)

 

export default (method,url,data)=>
if(method.toUpperCase() == "GET")
return server.get(url,
params:data
)
else if(method.toUpperCase() == "POST")
return server.post(url,data)

 

以上是关于简易封装的axios的主要内容,如果未能解决你的问题,请参考以下文章

axios 的简易封装

Element ui+Vue+SSM-简易学生信息管理系统-请求封装

Axios 简易教程

Vue项目中简易演示axios解耦

HttpServer 2 框架使用第三方自定义路由简易封装 Request 对象

JS----封装简易版jQuery