当前位置: 首页 > article >正文

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

文章目录

  • 前言
  • 1、安装axios
  • 2、封装request工具类
  • 3、封装api请求工具
  • 4、实战:vue中使用api请求工具类
  • 资料获取

前言

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

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

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

视频平台:b站-Coder长路


1、安装axios

npm install axios

2、封装request工具类

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

image-20240810100741618

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请求工具

image-20240810100848387

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

import request from '@/utils/request'

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

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

import { queryTeamMembers } from '@/api/openSiteApi'

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

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

image-20240810101031287


资料获取

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

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

  • 长路-文章目录汇总(算法、后端Java、前端、运维技术导航):博主所有博客导航索引汇总
  • 开源项目Studio-Vue—校园工作室管理系统(含前后台,SpringBoot+Vue):博主个人独立项目,包含详细部署上线视频,已开源
  • 学习与生活-专栏:可以了解博主的学习历程
  • 算法专栏:算法收录

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


http://www.kler.cn/news/334226.html

相关文章:

  • vite学习教程02、vite+vue2配置环境变量
  • Spring Boot项目POM文件详解
  • SQL Server—T-sql函数详解
  • C语言基本概念
  • 深入理解C#中的TimeSpan结构体:创建、访问、计算与格式化
  • 加密与安全_HOTP一次性密码生成算法
  • linux信号 | 学习信号四步走 | 透析信号是如何被处理的?
  • 第十五周:机器学习笔记
  • Python小白之Pandas1
  • 在Stable Diffusion(SD)中控制场景结构时,选择Canny还是Depth?
  • 【AI知识点】置信区间(Confidence Interval)
  • 如何将git 远程仓库update新建分支同步test到个人own仓库
  • 【PostgreSQL】实战篇——使用 PostgreSQL 进行数据分析与报表生成
  • Python时间戳转日期
  • arm-伪指令
  • 如何安全地大规模部署 GenAI 应用程序
  • 【科普】什么是apt和yum?它们之间有什么异同?
  • 3、练习常用的HBase Shell命令+HBase 常用的Java API 及应用实例
  • 资源《Arduino 扩展板4-单游戏摇杆》说明。
  • Prompt技巧总结和示例分享