vite学习教程04、vue集成axios封装request工具类及应用

文章目录

前言

博主介绍:✌目前全网粉丝3W+,csdn博客专家、Java领域优质创作者,博客之星、阿里云平台优质作者、专注于Java后端技术领域。

涵盖技术内容:Java后端、大数据、算法、分布式微服务、中间件、前端、运维等。

博主所有博客文件目录索引:博客目录索引(持续更新)

视频平台:b站-Coder长路


1、安装axios

shell 复制代码
npm install axios

2、封装request工具类

在src目录下创建请求脚本文件:request.js

js 复制代码
import axios from 'axios'

const service = axios.create({
  baseURL: import.meta.env.VITE_API_URL,
  timeout: 5000
})

// request 拦截器
service.interceptors.request.use(
  config => {
    // 在这里可以设置请求头、请求参数等return config
    return config
  },
  error => {
    console.log(error)
    return Promise.reject(error)
  }
)

// response 拦截器
service.interceptors.response.use(
  response => {
    // 在这里处理返回数据const { data } = response
    if (response.data.code !== 200) {
      console.error('Error:', data.message)
      return Promise.reject(newError(data.message || 'Error'))
    } else {
      return response.data
    }
  },
  error => {
    console.log(error)
    return Promise.reject(error)
  }
)
export default service;import axios from 'axios'

const service = axios.create({
  baseURL: import.meta.env.VITE_API_URL,
  timeout: 5000
})

// request 拦截器
service.interceptors.request.use(
  config => {
    // 在这里可以设置请求头、请求参数等return config
    return config
  },
  error => {
    console.log(error)
    return Promise.reject(error)
  }
)

// response 拦截器
service.interceptors.response.use(
  response => {
    // 在这里处理返回数据const { data } = response
    if (response.data.code !== 200) {
      console.error('Error:', data.message)
      return Promise.reject(newError(data.message || 'Error'))
    } else {
      return response.data
    }
  },
  error => {
    console.log(error)
    return Promise.reject(error)
  }
)
export default service;

3、封装api请求工具

不同的请求方式直接修改method即可:get、post、delete

js 复制代码
import request from '@/utils/request'

// 查询团队成员
export function queryTeamMembers() {
    return request({
        url: '/api/open/user/teamMembers',
        method: 'get'
    })
}

4、实战:vue中使用api请求工具类

js 复制代码
import { queryTeamMembers } from '@/api/openSiteApi'

created() {
  queryTeamMembers().then((data)=>{
      console.log(data)
  }).catch(err=>console.log(err))
}

构建运行下,成功访问请求:


资料获取

大家点赞、收藏、关注、评论啦~

精彩专栏推荐订阅:在下方专栏👇🏻

更多博客与资料可查看👇🏻获取联系方式👇🏻,🍅文末获取开发资源及更多资源博客获取🍅

相关推荐
90后的晨仔16 小时前
Vue中为什么要有 Provide / Inject?
前端·vue.js
草字16 小时前
uniapp 防止长表单数据丢失方案,缓存表单填写内容,放置卡退或误操作返回。
前端·javascript·uni-app
f 查看所有勋章17 小时前
六轴工业机器人可视化模拟平台 (Vue + Three.js + Blender)
javascript·vue.js·机器人
沐曦可期17 小时前
标准编码与算法
javascript·python
又是忙碌的一天17 小时前
前端学习 JavaScript(2)
前端·javascript·学习
2501_9151063217 小时前
JavaScript编程工具有哪些?老前端的实用工具清单与经验分享
开发语言·前端·javascript·ios·小程序·uni-app·iphone
GISer_Jing17 小时前
计算机基础——浏览器、算法、计算机原理和编译原理等
前端·javascript·面试
蒙奇D索大17 小时前
【数据结构】考研数据结构核心考点:二叉排序树(BST)全方位详解与代码实现
数据结构·笔记·学习·考研·算法·改行学it
玲娜贝儿--努力学习买大鸡腿版17 小时前
推荐算法学习笔记(十九)阿里SIM 模型
笔记·学习·推荐算法
蓝瑟17 小时前
React 项目实现拖拽排序功能,如何在众多库中选对 “它”
前端·javascript·react.js