import axios from 'axios'
import store from '@/store'
// 创建一个axios实例对象
// 1. baseURL 整个应用api的基地址
// 2. 大数处理 (不是必须的)
// 为什么会产生大数问题?
// 1. js能处理的Number范围 有一个临界值
// 2. JSON.parse()
// 怎么解决的大数问题呢?
// 判断当前浏览器是否支持BigNumber类型 如果支持就使用这种新数据类型进行处理
// 如果不支持就处理成字符串类型 toString()
// 3. timeout 接口最大超时时间 从接口正式发起到数据返回 最大可以持续多久
// 如果baseURL传入的是一个相对路径 前端项目启动的地址 + 相对路径 = 'http://localhost:8081/api'
const service = axios.create({
baseURL: process.env.VUE_APP_BASE_URL, // url = base url + request url y
// withCredentials: true, // send cookies when cross-domain requests
timeout: 5000 // request timeout
})
// 请求拦截器
// token全局注入 判断一下有没有token 如果有
// 为了其它接口方便携带token进行数据请求 放到了request header中
service.interceptors.request.use(
config => {
// 在这里我们从本地取到token 然后放到request headers中
// congfig: axios封装的对象 对象里面有一个比较重要的headers属性 请求头
// 修改完config之后 必须要return才可以
// 获取token数据 注
前端Vue 登录验证token(拦截器)
最新推荐文章于 2024-05-01 01:31:39 发布