一般这种情况都是根据自己的喜好怎么写都行
首先肯定是npm install axios
在项目里创建一个文件request.js文件
首先引入vue和axios
import Vue from "vue";
import axios from 'axios'
// 创建axios实例
const instance = axios.create({
timeout: 1000 * 60 * 5 //设置超时时间,超时之后请求便会cancel
});
获取接口请求地址
const baseURL = process.env.VUE_APP_SYSTEM_CONFIG_URL + process.env.VUE_APP_BASE_API
这个process.env.VUE_APP_SYSTEM_CONFIG_URL,process.env.VUE_APP_BASE_API拿的是下面文件里面的配置
我这是因为做了多环境配置,所以有这么文件,没有配置多环境一般情况就是prod里面的配置
//设置环境,生产
NODE_ENV = 'production'
//这个是接口请求需要拼接的前缀,需要就拼接,不需要直接拿掉
VUE_APP_BASE_API = "/api/"
//这个就是接口请求的ip地址,设置的话就根据这个访问接口,不设置的话默认是当前域名,我这里就是当前域名
VUE_APP_SYSTEM_CONFIG_URL = ""
// 设置请求头和接口地址
instance.defaults.headers['Content-Type'] = 'application/json; charset=UTF-8'
instance.defaults.baseURL = baseURL
/**
- 请求拦截器
- 每次请求前,如果存在token则在请求头中携带token
*/