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

Axios入门使用

文章目录

  • Axios入门使用
    • 一、引言
    • 二、Axios的安装与配置
      • 1、安装Axios
      • 2、创建Axios实例
    • 三、发送HTTP请求
      • 1、GET请求
      • 2、POST请求
      • 3、并发请求
    • 四、配置和拦截器
      • 1、配置默认值
      • 2、拦截器
    • 五、错误处理和取消请求
      • 1、错误处理
      • 2、取消请求
    • 四、总结

Axios入门使用

一、引言

随着前端技术的发展,前后端分离已成为标准开发模式。Axios作为一种基于Promise的HTTP客户端,被广泛应用于浏览器和node.js中,用于执行HTTP请求。本篇博客将详细介绍Axios的基本使用。

二、Axios的安装与配置

1、安装Axios

首先,需要安装Axios库。可以通过npm或yarn进行安装:

npm install axios

或者

yarn add axios

也可以通过CDN直接引入到HTML文件中:

<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>

2、创建Axios实例

Axios可以创建实例,以便于根据不同的环境进行配置:

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

三、发送HTTP请求

1、GET请求

使用Axios发送GET请求非常简单,如下所示:

axios.get('/user?ID=12345')
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

也可以通过params对象传递查询参数:

axios.get('/user', {
    params: {
      ID: 12345
    }
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

2、POST请求

发送POST请求,可以使用以下代码:

axios.post('/user', {
    firstName: 'Fred',
    lastName: 'Flintstone'
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

3、并发请求

Axios支持并发请求,可以同时发送多个请求并统一处理:

function getUserAccount() {
  return axios.get('/user/12345');
}
function getUserPermissions() {
  return axios.get('/user/12345/permissions');
}
axios.all([getUserAccount(), getUserPermissions()])
  .then(axios.spread(function (acct, perms) {
    //两个请求现已完成
    console.log(acct, perms);
  }));

四、配置和拦截器

1、配置默认值

可以为Axios设置默认值,例如:

axios.defaults.baseURL = 'https://api.example.com';
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;

2、拦截器

Axios支持添加请求和响应拦截器:

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

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
  // 对响应数据做点什么
  return response;
}, function (error) {
  // 对响应错误做点什么
  return Promise.reject(error);
});

五、错误处理和取消请求

1、错误处理

Axios可以通过catch方法来处理错误:

axios.get('/user/12345')
  .catch(function (error) {
    if (error.response) {
      // 请求已发出,但是服务器响应的状态码不在2xx范围内
      console.log(error.response.data);
      console.log(error.response.status);
    } else {
      // 一些在设置请求时触发的错误
      console.log('Error', error.message);
    }
    console.log(error.config);
  });

2、取消请求

Axios支持取消请求:

const CancelToken = axios.CancelToken;
let cancel;

axios.get('/user/12345', {
  cancelToken: new CancelToken(function executor(c) {
    // executor函数接收一个cancel函数作为参数
    cancel = c;
  })
});

// 取消请求
cancel('Operation canceled by the user.');

四、总结

Axios是一个强大而灵活的HTTP客户端,适用于浏览器和node.js环境。通过简单的配置和使用,可以快速地进行HTTP请求,并支持Promise API,使得异步请求处理更加方便。掌握Axios的使用,可以显著提升开发效率。


版权声明:本博客内容为原创,转载请保留原文链接及作者信息。

参考文章

  • Axios使用方法详解,从入门到进阶-CSDN博客
  • axios 全攻略

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

相关文章:

  • SKD4(note上)
  • 好玩的进3D度条
  • 怎么查看是公网ip还是私网ip
  • 【web安全】——sql注入
  • 使用 Qt 和 SQLCipher 实现 SQLite 数据库加密与解密
  • 【java数据结构】顺序表
  • .Net 6.0 监听Windows网络状态切换
  • RISC-V开发 linux下GCC编译自定义指令流程笔记
  • 《开题报告》基于SSM框架的电影评论网站的设计与实现源码++学习文档+答辩讲解视频
  • H.264编解码 - I/P/B帧详解
  • C++七种异常处理
  • 【重学 MySQL】五十五、浮点和定点数据类型
  • 排序算法之——归并排序,计数排序
  • [rk3588 debain]cpu死锁问题解决
  • vue.js 原生js app端实现图片旋转、放大、缩小、拖拽
  • LeetCode讲解篇之5. 最长回文子串
  • 股票接口api,如何用excel获得股票实时数据
  • OpenAI 开发者大会2024
  • vue的el-button防止重复点击
  • 大厂校招:海能达嵌入式面试题及参考答案