axios的封装

axios的封装

在src目录下新建文件夹utils工具类,文件夹里面新建http.js文件,如果项目涉及到多个基地址可以新建http2.js文件。

c 复制代码
import axios from 'axios';

/**
 * 后端
 */
 
// 创建axios实例
const http = axios.create({
  // 1.接口基地址
  baseURL: 'http://192.168.2.200:8080',
  // 2.接口超时时间
  timeout: 5000,
});

// 3.axios请求拦截器
http.interceptors.request.use(
  (config) => {
    return config;
  },
  (e) => Promise.reject(e)
);

// 4.axios响应式拦截器
http.interceptors.response.use(
  // 响应数据已经去掉了外层的 data 包装
  (res) => res.data,
  (e) => {
    return Promise.reject(e);
  }
);

export default http;

然后我们对应的接口就可以写在src目录下的apis文件夹里面,例如我们新建一个layout.js文件

c 复制代码
import http from '@/utils/http';

/**
 * 页面获取接口
 */

// 获取数据
export function getDataAPI(params) {
  return http({
    url: 'getData',
    params,
  });
}

// 更改数据
export function setDataAPI(data) {
  return http({
    method: 'post',
    url: 'setData',
    data,
  });
}

然后我们在使用的时候就只用进行导入,就可以简单的使用封装过后的接口了。

c 复制代码
import { getDataAPI } from '@/apis/layout';

// ......

// 使用
 const res = await getDataAPI({
          type: '铺缆',
        });
 console.log('数据:', res );
相关推荐
网络研究院1 天前
苹果 Safari 地址栏可能被超大光标视觉欺骗
前端·safari·苹果
slongzhang_1 天前
html添加水印
前端·html
Small black human1 天前
前端-什么是Vue
前端·javascript·vue.js
IT 前端 张1 天前
Axios与Ajax:现代Web请求大比拼
前端·javascript·ajax
ikun778g1 天前
uniapp使用uview UI,自定义级联选择组件
前端·前端框架·uni-app
java水泥工1 天前
基于Echarts+HTML5可视化数据大屏展示-惠民服务平台
前端·echarts·html5
万少1 天前
可可图片编辑 HarmonyOS(3)应用间分享图片
前端·harmonyos·客户端
Hy行者勇哥1 天前
现代软件系统架构:前端、后端、数据库、部署、算法与AI学习的结构与交互分析
前端·数据库·学习
前端开发爱好者1 天前
90% 前端都不知道的 20 个「零依赖」浏览器原生能力!
前端·javascript·vue.js
讨厌吃蛋黄酥1 天前
React语法全景指南:面试官问我用了哪些语法时,我这样回答拿到了offer
前端·react.js·面试