十、vue二次封装axios
下载axios
cnpm install --save axios
新建项目
配置axios二次封装文件reques.js
//对axios进行二次封装 import axios from "axios"; //1:利用axios对象的方法create,去创建一个axios实例 //2:request就是axios,只不过稍微配置一下 const requests = axios.create({ //配置对象 //基础路径,发请求的时候,路径当中会出现api baseURL: "http://120.24.235.216:9000", //代表请求超时的时间5S,超时停止 timeout: 5000, }) //请求拦截器:在发请求之前,请求拦截器可以检测到,可以在请求发出去之前做一些事情 requests.interceptors.request.use((config) => { //请求拦截器:在发请求之前,请求拦截器可以检测到,可以在请求发出去之前做一些事情 return config; }) //响应拦截器 requests.interceptors.response.use((res) => { //成功的回调函数:服务器相应数据回来以后,响应拦截器可以检测到,可以做一些事情 return res.data; //简化数据返回获取数据的调取 }, (error) => { //响应失败的回调函数 console.log(error) return Promise.reject(new Error('faile')); }) //对外暴露 export default requests
配置接口统一管理文件index.js
import requests from "./request" export function getChannelData () { return requests({ url: '/auth/admin/video/partition/queryAllPartition', }) }
使用接口
import { getChannelData } from "../api/index";
export default {
name: "HelloWorld",
data() {
return {
data: "",
};
},
methods: {
test() {
getChannelData().then((res) => {
this.data = res;
console.log(res);
});
},
},