axios基本使用

本文详细介绍了如何在项目中安装和使用 Axios,包括在 Vue 项目中的集成、基本用法、并发请求、请求配置、实例化、默认配置以及响应数据的处理。还讲解了如何添加和移除拦截器,以便在请求前后期进行自定义操作。
摘要由CSDN通过智能技术生成

1.安装

单独的文件

直接引入就可以

  <script src="https://unpkg.com/axios/dist/axios.min.js"></script>

在vue项目中使用

安装插件

$ npm install axios --save

全局注册

import axios from ‘axios’
Vue.prototype.$axios = axios

然后就可以使用this.$axios获取

2.基本使用

1.方法1

axios.请求类型('接口路径',参数对象)
.then(function(res){})
.catch(function(req){})

2.方法2

axios(配置对象)
.then(function(res){})
.catch(function(req){})

具体配置什么稍后再说

3.并发请求

function foo1(){
    return axios1...
}

function foo2(){
    retuen axios2...
}

Peomise.all(foo1(),foo2())

3.请求配置

常用的配置如下

axios配置
配置名含义
url请求接口
method请求类型
headers请求头
baseurl共同路径
pramas请求参数
timeout超时时间

4.实例化

实例化出不同的axios对象,分别设置不同的默认配置

const instance = axios.create({
  baseURL: 'https://some-domain.com/api/',
  timeout: 1000,
  headers: {'X-Custom-Header': 'foobar'}
});

5.默认配置

将所有请求通用的配置抽取出来,减少代码量

this.$axios.defaults.baseURL = 'https://api.example.com';
this.$axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
this.$axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

6.相应数据

请求成功后接口会返回一些数据

{
  //由服务器提供的响应数据
  data: {},

  //来自服务器响应的 HTTP 状态码
  status: 200,

  //来自服务器响应的 HTTP 状态信息
  statusText: 'OK',

  //服务器响应头
  headers: {},

  //`axios` 请求的配置信息
  config: {},

  // `request` 是生成此响应的请求
  request: {}
}

//这些数据都在then封装在函数中的对象内

7.拦截器

添加

// 添加请求拦截器
axios.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
    // 2xx 范围内的状态码都会触发该函数。
    // 对响应数据做点什么
    return response;
  }, function (error) {
    // 超出 2xx 范围的状态码都会触发该函数。
    // 对响应错误做点什么
    return Promise.reject(error);
  });

移除

const myInterceptor = axios.interceptors.request.use(function () {/*...*/});
axios.interceptors.request.eject(myInterceptor);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值