Axios网络请求总结

在实际项目开发中,前端页面所需要的数据往往需要从服务器端获取,这必然涉及与服务器的通信。Axios 是一个基于 promise 网络请求库,作用于node.js 和浏览器中。Axios 在浏览器端使用XMLHttpRequests发送网络请求,并能自动完成JSON数据的转换。

官网地址:https://www.axios-http.cn/

1.版本说明

axios主要有两个版本系列,分别是0.x版本和0.21.x版本。

0.x版本:这是较旧的版本,支持浏览器和Node.js环境。在这个版本中,Axios使用基于XHR(XMLHttpRequest)的传统AJAX请求,并且使用回调函数来处理响应结果

0.21.x版本:这是更新的版本,同样支持浏览器和Node.js环境。在这个版本中,Axios使用基于浏览器的Fetch API和Node.js的http模块进行请求。它使用Promise和async/await语法来处理响应结果,使得代码更加简洁和易读。这个版本要求Node.js版本不低于10.0.0,并且需要使用支持Promise和Fetch API的浏览器。

Axios的不同版本之间有一些功能和API的变化。例如0.5.1和0.5.4版本将具有相同的API,但0.6.0版本将会有重大变化。

2.vue引入axios

首先先按照axios到node_modules中

bash 复制代码
npm install axios@0.21.1

其次在main.js中引入

javascript 复制代码
import axios from 'axios'

//配置请求根路径
axios.defaults.baseURL="http://127.0.0.1:8789";

//将axios作为全局的自定义属性,每个组件可以在内部直接访问
Vue.prototype.$http = axios;

最后就可以在vue组件中发起使用

javascript 复制代码
<template>
  <div id="app">
    <!-- <img src="./assets/logo.png"> -->
    <!-- <router-view/> -->
    <First/>
    <Movie title="金刚狼" rating="8.8"></Movie>
    <Movie v-for="movie in movies" :title="movie.title" :rating="movie.rating" :key="movie.id" ></Movie>
    <Table :tableData="tbdata"></Table>
  </div>
</template>

<script>
import First from '@/components/First.vue'
import Movie from '@/components/Movie.vue'
import Table from '@/components/Table.vue'
export default {
  name: 'App',
  data:function(){
    return {
      movies:[
        {id:1,title:"金刚狼",rating:"8.8"},
        {id:2,title:"金刚狼2",rating:"8.9"},
        {id:3,title:"金刚狼3",rating:"9.0"},
      ],
      tbdata:[]
    }
  },
  created(){
    console.log('App.vue is created');
    this.$http.get("/tblEmployee/getAll").then((response)=>{
      console.log(response.data);
      this.tbdata=response.data;
    }).catch(function(err){
      console.log(err);
    }).then(
      function(){
        console.log("无论如何都要执行一下")
      }
    )
  },
  components:{
    First,
    Movie,
    Table
  }
}
</script>

3.axios一些常用的API总结

相关推荐
志栋智能31 分钟前
告别高昂投入:超自动化IT运维的轻量化实践
大数据·运维·网络·人工智能·自动化
黄昏晓x2 小时前
Linux----网络
linux·网络·arm开发
sensen_kiss2 小时前
CAN302 电子商务技术 Pt.1 Web技术导论
前端·网络·学习
攻城狮在此2 小时前
华为LACP链路聚合配置(三层聚合)
网络·华为
AttaGain3 小时前
【Ubuntu配置VLAN网络】
linux·网络·ubuntu
网安Ruler3 小时前
DoIP (基于 IP 的诊断通信协议)分析与理解
网络·tcp/ip·汽车
线束线缆组件品替网4 小时前
Amphenol RJE1Y36610644401 CAT6A网线组件选型与替代指南
网络·人工智能·数码相机·电脑·音视频·硬件工程·游戏机
码出钞能力4 小时前
Linux的弱主机模型(TCP/IP协议的弱端系统)
linux·网络·tcp/ip
布史4 小时前
Prometheus Python Client 实操指南:从零实现自定义 Exporter
网络·python·prometheus
默|笙4 小时前
【Linux】进程信号(1)_信号产生
linux·服务器·网络