第一步
- 在项目中创建一个工具文件夹 utils 文件夹名称可以随意更改(utils是一种约定俗称的名称)
- 在utils文件夹中创建一个server.js 该文件的名字也可以随意命名
配置拦截器功能
在server.js中
// 导入axios
import axios from 'axios'
// 使用axios创建一个新的服务对象
// 其实server就是axios 只不过是给axios添加了一些基本配置之后的结果而已
const server = axios.create({
baseURL: 'https://api.it120.cc',
timeout: 5000 // 请求超时的时间
})
// 请求拦截
// interceptors axios的拦截器 request 是请求的意思
server.interceptors.request.use(config => {
return config
}, err => {
Promise.reject(err)
// console.log(err);
})
// 响应拦截
server.interceptors.response.use(res => {
// 这里可以做请求产生错误的逻辑处理
return res
}, err => {
// console.log(err);
Promise.reject(err)
})
// 导入定义好的请求模块
export default server
使用封装好的axios
- 新建一个api文件夹 专门用来发送axios请求使用
- 在api文件夹中可以根据项目的模块来建立过个发送api请求的模块 以home模块为例
在api文件夹中创建一个home.js文件
// 导入我们制定好的aixos请求方法
import server from '@/utils/server'
// 发送请求的示例 这里以promsie封装为例
const getBanners = () => {
return new Promise((resovle, reject) => {
server.get('请求地址').then(res => {
resolve(res)
})
})
}
export {
getBanners
}
在要使用接口的vue文件中导入方法
import { getBanners } from '@/api/home'
created() {
getBanners().then(res =>{
console.log(res) // 就是请求回来的结果
})
}
版权声明:本文为weixin_54182512原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。