axios的使用与封装详细教程

目录

一、axios使用方式

在 Spring Boot + Vue 的项目中使用 Axios,你需要在 Vue 项目中安装 Axios 库,因为 Axios 是一个前端 JavaScript 库,用于发送 HTTP 请求和处理响应数据,而与 Spring Boot 后端的 Java 代码是分离的。

通过命令行在 Vue 项目中安装 Axios:

Axios 官网: https://www.axios-http.cn/docs/intro

java 复制代码
npm install axios --save

这将安装最新版本的 Axios 库,并将其添加到你的 package.json 文件中。一旦安装了 Axios,你可以在 Vue 组件中引入它,如下所示:

java 复制代码
import axios from 'axios'

然后,你可以在需要发送 HTTP 请求的地方使用 Axios,例如:

java 复制代码
<script>
    import axios from 'axios'
    export default {
        name: "Home",

        data() {
          return{
              tableData: []  // 存储从数据库中获取的数据
          }
        },
        mounted() {
            axios.get('http://localhost:8080/info/all') // 发送HTTP GET请求到服务器端的接口
                .then(response => {
                    this.tableData = response.data.t; // 将获取的数据存储到data属性中
                    console.log(this.tableData)
                })

        },

    }

二、axios在main.js配置

通过在 Vue 原型上注册 Axios 实例,可以使其在整个 Vue 应用中可用,方便统一管理和调用 API 请求。在组件中可以直接使用 this.$axios 来发送请求,而无需再次导入和创建 Axios 实例。

java 复制代码
import axios from "axios";

const instance = axios.create({
    // 访问路径的时候加一个基础路径
    baseURL: 'http://localhost:8080/'
});
//起一个名字注册到Vue里面
Vue.prototype.$axios=instance;

在vue中使用方法

去除了 import axios from 'axios'
更改了 this.$axios.get('info/all')

java 复制代码
<script>
    // import axios from 'axios'
    export default {
        name: "Home",
        data() {
          return{
              tableData: []  // 存储从数据库中获取的数据
          }
        },
        mounted() {
            this.$axios.get('info/all') // 发送HTTP GET请求到服务器端的接口
                .then(response => {
                    this.tableData = response.data.t; // 将获取的数据存储到data属性中
                    console.log(this.tableData)

                })

    }
</script>
相关推荐
ℋᙚᵐⁱᒻᵉ鲸落1 小时前
移动端滑动手势冲突:overflow: auto导致外层横向滑动失效
前端·javascript·css·vue.js·html
学长毕业设计2 小时前
基于SpringBoot的公益基金管理系统(源码+文档+讲解视频)
java·spring boot·后端
东小西2 小时前
【SAA实战】第 3 篇 · 工具调用全攻略:把业务能力交给 Agent 自己调度
java·后端·spring
东小西2 小时前
【SAA实战】第 4 篇 · Agent 短期记忆:saver 让 Agent 跨轮记得住(threadId 隔离)
java·后端·spring
许彰午2 小时前
22-DataCenter报文序列化
java·低代码·架构·状态模式
2601_962065252 小时前
[MySQL] SQL优化之性能分析
java·sql·mysql
小范同学_2 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
予昊3 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
2601_962203514 小时前
【SpringAI入门】初识SpringAI
java
weixin_461408584 小时前
Mybatis-flex小记
java·开发语言·mybatis